Файл создан программой HELPGEN. Copyright (c) С.М.Абель 1988 г. ■pp^p■этоэлементэкранчтобычточтеничитатьчислочерезцилиндрцветфункциифункциформфлагфайлустройствуструстановустанавливауправляющуправлениумолчаниумалчиваемуказывауказатолькотекущтексттвердтактаблицсуществструктурстрокстранстатусстандартнспециальнсохрансоответствсоздасодержсовместимсмещследующсканкодсистемсимволсервиссекторсегментрезультрезидентрезерврежимрегистррасширраспределразмерразличныразделпроцесспроизвольнпрограммпроверпринтерприложениприпрерыванипредоставпоследовательнпослепортпоместитпользователполучпозиципозволяподфункциподфподдержписатьпереходпереполненипереназначперемещпеременнпереключателпередпервпараметрпараграфпамятьпамятиошибокошибкоткрыориентированныопроситьопределенопределописателописаниеоперациокружениоглавлениобычнобработобрабатываоборудованиобластносителномернетнескольконеобходимнекоторнедокументированневернначинаначанапримермонохромнмониторможноможетлогическкурсоркоторкорневконтролконецкомандкодкогдакластерклавишклавиатуркаккаждиспользинформациинтерпретинструкциинициализимяилиизмензначенизатемзарезервированзапускзапрозаписзамечанизагрузаголовзавершеслидрайвердоступдорождополнительндолждлядлиндискдескриптордействдатданныграфическвыходвыполнвызывавызоввыводвходвсегдавсевремявременвосстанавливавозвравключвидеоверсиверификацивекторвводбытьбуфербудетбольшинствблокировблокбитбайтатрибутактивадресадаптерwriteverticalthestatusselectregisterreadrOMportpSPmodememoryinterruptiOCTLiNThelphardhandlehELPgraphicsforfCBfATenableeGAdrivedisplaydiskettediskdestdescriptiondatadTAdOSdMAcurrentctrlcontrolcommandcharacterchannelcONFIGcOMMANDbytebreakbitbIOSandaddressadapteraSCIIэG │ =∙S(Ў7=LЩR╓TШVяWZk[б\_╧`(bтc h&kmnKpsDuАyє{є}eА▓ВЎДJЙLК4МlО8РоТЬФдЦ╦ЧнЩУЬjЯыб█ж┤и·й╦л/н╔оq░8▓~┤х╖U║М┴╤┬▐─ь╟ф╨Ы╥╧╘├╓╦┘▌▀ фUшAъ▌ь4я┘ ░Hp Z Б╥mvVЫ&Ў(i*█-V0(4╟8╠:сBьH1QЬR]THUУWЇY7\M^Ю`Тbd eпhйj┼l5sG~лИ/ЛшНBТЕа·вмлg▓┬┐!├┐█Дє№ъ╕┘Х╓= H!#&%═(?.О/E2oBЦSTWnj m_tоЖ░ЙаН6ПgТ)Ъ3ЬЁЮ\аТвaйОм'▓█┤═╗й└с├╬╦╘╨░╙╖▀усЗфБщnЇ√Ў╦■Б°v\"Г*0f:k> BёRPVYщeqsR}-З┘ПщФsЫб[╜Я┐I╫i█!рЩшЕы▀°┬∙дQОм" +и-Є0I58∙MЄRЪWB[╡kРw╔З'ПDЦ дБпь┐╔╩Y╙╛┘ї╜■И ·"&▐5Ф8Y;═=═E╙H║Sю\ ═ Справочник по MS-э. ╝я 3.2a ═ ┌─┐ ┌─┐ ┌─┐ ┌─┐ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ └─┘ │ ┌─┐ │ │ ┌─┐ │ │ │ ┌─┐ │ │ ┌─┐ │ │ │ │ ┌─┐ │ │ │ │ │ │ │ │ │┌───┘ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │└─┘ │ │ │ │ │ │ └─┘ │ │ │ │ │ └─┐ │ │ │ └─┘ │ ┌─┐ └─┘ └─┘ └─┘ └─┘ │ ┌─┘ └─┘ ┌─┐ │ │ │ Электронный справочник! │ │ │ └─┘ │ │/ │ │/ └─┘ ╔6═╗ ║ б█фирмы Flambeaux Software ╝я 1.2 ║ ║ Адаптировал С.М.Абель ║ ╚6═╝ '{4╬]├4╧\r4╥4╤▓╓4╨Ь╒┤╫4╢ ╜4 ╙ p ╝4 ╘ v u ┼4 ъ ╡x╖4w╕4ф4Шz╛4РАЗДЕЛЫ ПОМОЩИ╒═╗ э╔ ═╕ ╒═╗ ·/АППАРАТУРА ╔═╕ ╒═══╗ СИМВОЛЫ И КОДЫ ╔═══╕│ ╚═╝ │ │ ╚═╝ │ │ ╚═╝ ││ Fun ФУНКЦИИ э │ │ ·ПРЕРЫВАНИЯ │ │ ■МЕНЮ ТАБЛИЦ ││ эГРУППЫ ФУНКЦИЙ │ │ фАДАПТЕР │ │ Hex ■10-16-2 КОДЫ ││ ┌ПРЕРЫВАНИЯ э │ │ EMS Exp√ed-ПАМЯТЬ │ │ Box ПСЕВДОГРАФИКА ││ │ │ │ │ CRLF УПРАВЛЯЮЩИЕ КОДЫ ││ Err КОДЫ ОШИБОК │ │ ╫СХЕМА ПАМЯТИ │ │ Char НАБОР СИМВОЛОВ ■ ││ Attr АТРИБУТЫ ФАЙЛА │ │ ╙-·ПОЛЯ │ │ ││ ▌ОПИСАТЕЛИ │ │ ╘ПОРТЫ В/В │ │ Ё-Shift-Alt ││ │ │ CMOS-^ │ │ ANSI.SYS Esc-СЕРИИ ││ хrs ДРАЙВЕРЫ │ │ ╙-Scan │ │ Print КОДЫ ПРИНТЕРА ││ ї.SYS │ │ │ ╘═╛│ т │ │ 8088/86/286 КОМАНДЫ │ █КАК ЗАПУСКАТЬ│ Env ОКРУЖЕНИЕ э │ │ ││ EXE ЗАПУСК/ЗАВЕРШЕНИЕ │ │ Scan СКАНКОДЫ │ ОБЩЕЕ ОГЛАВЛЕНИЕ│ IO СТАНДАРТНЫЙ В/В │ │ Scrn АТРИБУТ ЭКРАНА │ ОГЛАВЛЕНИЕ ПО АЛФАВИТУ│ Vers ВЕРСИИ э │ │ │ Blocks БЛОКИ И ТАБЛИЦЫ│ О ФУНКЦИЯХ э │ │ Sw ПЕРЕКЛЮЧАТЕЛИ PC │ Serv ФУНКЦИИ эИ ·╘═╛ ╘═╛ Ш ш Главное меню помощи >ы помощи ие ┼и э/· тель  й э/· Алфавитный тель $иц Общее kе МОовать TECH █! оиз █! ├)╙ v╬ ╬╘#╥ ╢ ╨ ┌ & ' (М▄┘┴Н╜уз Ь╕а╬)╙#╥ _" ╡#!2$1M%x&w(Ю)v*':,v-з.q/л0ж1й2и3к49F5"p7(▀8%├:Е;╕<╣=Ж?▄@█A тB▌CмDнE ╜FпG░H$ШIоJ!▒K#бL#вM#гOvPQ)R&S T1U(4V'8W)FX"pY*k[Л\Д]К_z`va ╡b▓c]d e фf"ug\h┤ixjwlЪmЯn$Шo ╡puqеrдs ЬtЫu&│vоw#Щyyzb{ Ь|Ы}┤~!`wА+aВ ├Д ╜Е║ЖИИлЙЛК▓Л1UМ&jОrП sР tТнУпФ░ХuЦ9FЧКШоЪ{Ы\Ь('Э"7Ю!╦азбив9Fгад#бе#вж#ги┘й_к╢л Ом!Гн╖о╗░ ╜▒v▓r│╓┤И╡#Й╢Н╖Э╕d╣#Щ║x╗╒╝╝╜╛╛33┐В└!Г┴)l├┼─╞┼'╟╟╔╚╪╔╫╦╤╠_═ ╬#╘╧П╨"o╤%с╙$Ш╘╓╒{╓5ч╫╒╪╝┌ ╜█║▄И▌5ч▐╛ррШ2рBр сОбщее kеНаименования >ов помощи, сгруппированные по тематике. ┌ ─┐.═╡ ANSI.SYS │ ANSI консольные Escape-Hости └ ─┘ ї.SYS# ┌─┐.═╡ ■│ ■и ■Z (подменю) └─┘ Epson/IBM Зы Cа Псевдографика и 'ые 1ы :енные Ки ■  а набора 1ов ┌─┐.═╡ Асинхронный в/в │ Jы асинхронного ╦а └─┘ эFn 03H: Вспомогательный ┐(AUX) эFn 04H: Вспомогательный ▓(AUX) ┌14H: В/в  Hый J ┌─┐.═╡ AT │ AT Jы ых иов └─┘ AT  Лы AT Yи ┌15H: :енный 2AT "а CMOS-_ ,ость 0 ┌ ─┐.═╡ ╚ы │ ╚а └ ─┘ ╚а ╚ы а ┘Пя об е ┌ ─┐.═╡ 1ы │ ■ (подменю) └ ─┘ ANSI консольные Escape-Hости Псевдографика и 'ые 1ы  1ьного в/в (подменю) ┌ ─┐.═╡ Ў.COM │ jе э └ ─┘ эFn 30H: ль r╝и э эFn 4bH: Эзить/пить Aу -- EXEC Щи Яение A &ый ┐-▓ ┌─┐.═╡ Зависимость от $ы │ ┼Пи $ы └─┘ ї.SYS эFn 38H: ль/уст. Пю $ы ┌─┐.═╡ бы │ ї.SYS └─┘ ╚а Основы бов  aи бов  "а Юка а Юок Ъса а "ы Ъсов  Слово состояния а эFn 44H: е ┐ом-▓ом а -- ┘ емые бы (подменю) ┌─┐.═╡ Дисплейные ╦ы │ Jы в/в  ного ного ╦а └─┘ :енный ний ╦(ф) (подменю) См. >ф ┌10H: ╗2 ╚ы а  а ╗\ов Сводка 8ов ╗ (┌10H) ┌─┐.═╡ ии иета │ AT Jы ых иов └─┘ Jы Длера иет Jы ю XT Jы ых иов ┼\ов ·(BPB) Гой 3 CMOS-^ (кительные типы иов AT)  а >ов иа  а \ов иет Индекс их ┼ов эи ·(подменю) йqя  а \ов ого иа \ы общего ┘(CL=40H,60H) \ы общего ┘(CL=41H,61H) \ы общего ┘(CL=42H,62H)/─ иовый 2э ї.SYS (RAM-ии Аий и) эFn 0dH: Сбросить и эFn 0eH: Выбрать ый иэ эFn 19H: ль ый иэ эFn 1aH: ить ╩ь эFn 2fH: ль ий ь эFn 32H: ль Пю о иах э (wо) эFn 36H: ль свободную ^иа эFn 44H: е в/в иа -- ┘ емые бы  ┌25H/26H: Прямые иовые е/Ыь/─ ╙-·обслуживание иов Зaи иа (╣щает ┌13H) ┌0eH: Fе от иеты ┌13H: иовый в/в ┌─┐.═╡ э(PC-эи MS-э) │ О  ях э └─┘ ї.SYS jе э Зы `э  эпо группам (подменю)  э (подменю) ╝и э  а ;ения ов (т) Fя э (подменю) gь а (▌) Щи Яение A &ый ┐-▓/─  ы и ┼и kя ┼Пи о ие Индекс их ┼ов эи · (подменю) jе э т Юок а EXE ┼\ов Exec (EPB) ╚а ┼я ом (с) ╢и ла *ния/обновления а йqя Префикс Aного 4а (╒)/─ вк иовым ам 8ва / 8bтия  овой 0ы ╚а ┼я ом (с) gь а (▌) ▌-cй ┐-▓ &ый ┐-▓ Традиционный с-cй ┐-▓ ┌─┐.═╡ ф│ ╡о ф (подменю) ├─┴─┐.═╡ oе │ CMOS-^ (а же типы иов) └─┘ Список oя (╞овые и ленного oя) ┌11H: Дь oя ┌─┐.═╡ aи │ aи бов  └─┘ Зы `иа (╣щает ┌13H) Зы `э эFn 59H: ль :енную Пю об aе ┌24H: mчик критических ` ┌─┐.═╡ Exp√ed-^│ Exp√ed-^: спецификация (L/I/M EMS) └─┘  EMM (Менеджер Exp√ed-_) %EMM# ┌ ─┐.═╡ аты │ Гой 3 └ ─┘  а >ов иа  а \ов иет т эFn 44H: е ┐ом-▓ом а -- ┘ ┌13H: иовый ┐-▓ йqя ┌ ─┐.═╡ Fя │ Fя и 2╙-· (подменю) └ ─┘ Fя э (подменю) эFn 25H: ить ╛Fя эFn 35H: ль ╛Fя Си я ?ором ┌─┐.═╡ ┘│ ╚а └─┘ Ъсы а эFn 44H: е ┐ом-▓ом а -- ┘ ┘Пя об е \ы общего ┘(CL=40H,60H) \ы общего ┘(CL=41H,61H) \ы общего ┘(CL=42H,62H) ┌ ─┐.═╡ Ла │ AT  Лы └ ─┘  1ьного в/в :енные Ки ■ ┌16H: Обслуживание Лы ┌09H: Fе от Лы /ы Лы и состояния Лы ┌─┐.═╡ ^│ CMOS-^! └─┘ ї.SYS (VDISK.SYS RAM-и) Exp√ed-^ (L/I/M EMS) Общая схема _ ┌11H: Дь oя ┌12H: <Оуемой _ ┌15H: AT :енный 2(RAM сверх 1 мега╟а) ┼я ^ю (MCB)  я ^ю Префикс Aного 4а (╒) Щи Яение A (;ение _) Xые ╙-· ╙-Scan Yи PC (ка _0ы) эFn 31H: KEEP - Яить и остаться 6ным ┌08H: Fе от таймера ┌09H: Fе от Лы ┌27H: Яить и остаться 6ным ┌ ─┐.═╡ Зы Ж│ 8088/8086/286 набор Ж (подменю) └ ─┘  а набора Ж Жы с дым Зом iи ┌─┐.═╡ Jы │ Жы Zачи мх └─┘ Сводка Jов в/в План Jов в/в (подменю) ┌ ─┐.═╡ C│ ■ие Зы └ ─┘  1ьного в/в эFn 05H: ▓на C Epson/IBM ие Зы Cа ┌17H: Rка Cа ┌2fH: Мультиплексное Fе (Print Spooler) Jы ╦а параллельного Cа ┌ ─┐.═╡ ╙-·│ Индекс их ┼ов эи · └ ─┘ Общая схема _ Fя и 2╙-· (подменю) POST (Power-On Self-Test) - самоBка EЭзке Xые ╙-· ╙-Scan% ┌─┐.═╡ Yи │ CMOS-^! └─┘ Список oя ┌11H: Дь oя POST (Power-On Self-Test) - самоBка EЭзке Yи PC (подменю)P─ Алфавитный индекс ие ┼и эи · >ы помощи Главное меню А ]\{          1#&")""06"22"( &! ".!#,"$-#%-$&'%'6&((')1(*+)++*,+-,.-/.0 /190213!24635<46?57/68"79'8:H9;-:<-;='<>;=?#>@#?A#@B'AC)BDCE/DF6EG9FH.GI.HJ,IK4JL1KM+LN5MO'NP-OQ&PR,QS.RT*SU0TV1UW-VXWY5XZ%Y[+Z\4[^f_g`ha#ib&jc*kd+le.mf2ng"oi!|j}k!~lm#АnБoВp!ГqДsЕtЖuЗwИx#ЙyКz/М{Н| О}П~РСАТБ УВ/ФДsЖЖШ3Ж CЖ Зkе 2ных  й эи · низкого уровня, Gляемые эи ╙-·7 ┌─┐7═╡ Меню  й │  э* └─┘  эпо группам Fя э Fя и 2╙-· ┌ ─┐7═╡  э│ эFn 00H: Яить Aу └ ─┘ эFn 01H: ┐с Лы эFn 02H: ▓на дисплей эFn 03H: ┐AUX эFn 04H: ▓AUX эFn 05H: ▓на C эFn 06H: Обмен с консолью эFn 07H: Нефильтрующий консольный ┐без эха эFn 08H: Консольный ┐без эха эFn 09H: Выль #у эFn 0aH: ┴изованный ┐#и эFn 0bH: Bить %┐а эFn 0cH: ┐с очисткой эFn 0dH: Сбросить и эFn 0eH: Выбрать ый иэ эFn 0fH: bть  с эFn 10H: Закрыть  с эFn 11H: Найти 1-й совпадающий  с эFn 12H: Найти .ий совпадающий  с эFn 13H: Удалить  с эFn 14H: Hый  с эFn 15H: SHый  с эFn 16H: *ть  с эFn 17H: Переименовать  с эFn 19H: ль ый иэ эFn 1aH: ить ╩ь эFn 1bH: ль Пю т(ий и) эFn 1cH: ль Пю т(любой и) эFn 21H: Ыь @ого а эFn 22H: SЫь @ого а эFn 23H: ль <а  с эFn 24H: ить ╩┼а @ого а эFn 25H: ить ╛Fя эFn 26H: *ть префикс Aного 4а эFn 27H: ┼@ого а эFn 28H: S┼@ого а эFn 29H: Разобрать Уа эFn 2aH: ль лу э эFn 2bH: ить лу э эFn 2cH: ль ╢э эFn 2dH: ить ╢э эFn 2eH: ить/сбросить Yь ╜и эFn 2fH: ль ий ь эFn 30H: ль r╝и э эFn 31H: Яиться и остаться 6ным -- KEEP эFn 32H: ль иовую Пю э(wо) эFn 33H: ить/dуровень Дя Fя э эFn 34H: ╩%а реентерабельности э эFn 35H: ль ╛Fя эFn 36H: ль свободную ^иа эFn 37H: ить/d1-Yь (wо) эFn 38H: ль/ить Пю $ы эFn 39H: *ть новое kе -- MKDIR эFn 3aH: Удалить kе -- RMDIR эFn 3bH: ить ое kе э-- CHDIR эFn 3cH: *ть gь а эFn 3dH: bть gь а эFn 3eH: Закрыть gь а эFn 3fH:  gь эFn 40H: Sв  gь эFn 41H: Удалить  эFn 42H: ить тель а -- LSEEK эFn 43H: ить/d╚а -- CHMOD эFn 44H: е ┐ом-▓ом а -- ┘ эFn 45H: Дублировать gь а -- DUP эFn 46H: Vить gь -- FORCDUP эFn 47H: ль ое kе э эFn 48H: ;ить ^(ль <_) эFn 49H: Освободить ┼;енной _ эFn 4aH: Сжать Ф:ить ┼_ эFn 4bH: пить ФЭзить Aу -- EXEC эFn 4cH: Яить Aу -- EXIT эFn 4dH: ль Зоа Aы -- WAIT эFn 4eH: Найти 1-й совпадающий  эFn 4fH: Найти .ий совпадающий  эFn 54H: ль Yь ╜и э эFn 56H: Переименовать/переместить  эFn 57H: ить/d╢/лу а эFn 59H: ль :енную Пю об aе эFn 5aH: *ть уникальный ╖ный  эFn 5bH: *ть новый  эFn 5cH: ─ать/раз─ать вк у эFn 5eH: =е сетевые  эFn 5fH: Vение в сети эFn 62H: ль ╩префикса Aного 4а ┌─┐7═╡ Fя э│ ┌20H: Яить Aу └─┘ ┌21H:  э ┌22H: ╩Яения ┌23H: ╩оа по Ё-° ┌24H: mчик критических ` ┌25H/26H: Прямые иовые е/Ыь ┌27H: Яиться и остаться 6ным ┌28H: Квант ╖и э(wо) ┌2eH: пить Жу э(wо) ┌2fH: Мультиплексное Fе ┌─┐7═╡ Fя ╙-·│ ┌00H: Uе Eделении └─┘ ┌01H: Пошаговое Fе ┌02H: Немаскируемое Fе ┌03H: Дьная точка ┌04H: Fе по Uю ┌05H: Печатать  ┌08H: Fе от таймера ┌09H: Fе от Лы ┌0eH: Fе от иеты ┌10H: ╗2 Обзор ╗2а ф 2· ┌11H: Дь oя ┌12H: <Оуемой _ ┌13H: иовый в/в ┌14H: ┐-▓ Hый J ┌15H: :енный 2AT ┌16H: Обслуживание Лы ┌17H: Rка Cа ┌18H: ╙-BASIC ┌19H: zльный Эзчик ┌1aH: ┐-▓жтаймера ┌1bH: Fе с Лы ┌1cH: Lьское Fе по таймеру ┌67H:  EMMP─ Общее kе ие ┼и эи · Темы помощи Главное меню ╪╬H╧.╥╢╤Ш ╜ vШ ├ t s &╙ еruЫa ъшщы ьа чЩ╒╝з╕ Я!Ю"м#д$Э% ф&Ж' (о)p*л+й,ж-и.x/$┼0╖1╗2┘3▓4Л5н6ц7╓8 ╡9┤:#б;#в<#г= ╛> ╪? ╫@\A{B(|C$}D(~E/F*АGБH%ВI(ГJ%ДKЕL%ИM*ЙNКO/МP%НQ'ОR"ПSРT#СUТV'УW6ФX*ХY,ЦZ.Ч[#f\g] h^*i_-j`'ka2lb5mc9nd)oe#╘fygкhуi║jwk╣l╞m╨n░o!▒pпq"urШs│t uzv]wex0`y^z_{d|c}b~А Б В Г Д Е*ЖЗИЙКЛМ"НОП)Р/СТ+У+ФХ!ЦЧ Ш'!Щ%"Ъ&#Ы&$Ь %Э/&Ю!'Я*(а$)б$*в+г,д-е.ж/з20и1й2к/3л54м85н(6о7п 8░A9▒&:▓&;│ <┤4=╡>╢?╖@╕ A╣"B║C╗(D╝/E╜%F╛'G┐'H└%I┴,J┬)K├$L─.M┼ N╞&O╟P╚%Q╔'R╩#S╦)T╠*U═&V╬W╧.X╨Y╤$Z╥.[╙Ъ╒╒Ш3╒ B╒ ╓Алфавитное kе >ов помощи ■ ■: десятичные,шестнадцатеричные,двоичные Зы - перекрестная  а ■: псевдоние и 'ые 1ы ■: :енные Ки ■: ие Зы ·и э: ие ┼и CMOS-^ ї.SYS эи ·: ие ┼и ф EMM % EMM  (Exp√ed ╫Manager) Escape-Hости консоли ANSI EXE-: Юок Exp√ed-^ т с с-cй ┐-▓ ▐: ▒ ▐: общее kе ▐: h ▐: h(проеение) ▐: 6ный █! ▐: темы ▐: ка и настройка ┘Пя об ах POST - самоBка EЭзке ╒ ╙-·: Xые ╙-Scan ╚а ╚ы а ┼Пи иа ┼Пи $ы ┼\ов ·(BPB) ┼\ов EXEC (EPB) ┼я ^ю (MCB) ╝и э ╗2: обзор Главное меню йqя бы  бы : aи Юок Ъса а Юок а Ъсы  Щи Яение A Си ?оров 8088/8086/286 Ла: /ы Ла: и состояния Ла AT:  Зы `э Зы `иа (╣щает ┌13H) Гой 3 НЕТ В ДОКУМЕНТАЦИИ Общая схема _ jе э gь а \ы общего ┘(CL=40H,60H) \ы общего ┘(CL=41H,61H) \ы общего ┘(CL=42H,62H) Yи Jы: обзор Jы: план Fя э Fя и 2╙-· Fе 00H: Uе Eделении Fе 01H: пошаговое Fе Fе 02H: немаскируемое Fе Fе 03H: Fе по Дьной точке Fе 04H: Fе по Uю Fе 05H: печатать  Fе 08H: Fе от таймера Fе 09H: Fе от Лы Fе 0eH: Fе от иеты Fе 10H: ╗2 Fе 11H: Дь oя Fе 12H: <Оуемой _ Fе 13H: иовый в/в Fе 14H: в/в  Hый J Fе 15H: AT :енный 2 Fе 16H: обслуживание Лы Fе 17H: Rка Cа Fе 18H: ╙-BASIC Fе 19H: zльный Эзчик Fе 1aH: в/в жтаймера Fе 1bH: Fе с Лы Fе 1cH: Lьское Fе по таймеру Fе 1dH: тель ╗\ов Fе 1eH: тель \ов иеты Fе 1fH: тель них 1ов Fе 20H: Яить Aу Fе 21H:  э Fе 22H: ╩Яения Fе 23H: ╩оа по Ё-° Fе 24H: mчик критических ` Fе 25H/26H: прямой иовый в/в Fе 27H: Яиться и остаться 6ным Fе 28H: квант ╖и э(wо) Fе 2eH: пить Жу э(wо) Fе 2fH: мультиплексное Fе CEpson/IBM: ие Зы 8ва / 8bтия Слово состояния а ,ость 0 Список oя &ый ┐-▓  а ╗\ов  а набора Сй  а набора 1ов  а \ов иет  а \ов ого иа  а >ов иа  а ;ения ов (т) ие ┼и эи · ат ╖и/лы а  э  э: h  эпо группам  э: смешанные   в/в, cе на gи ов  Пи о 0е  1ьного в/в  я ^ю  я ?ами  овой 0ы 00H: Яить Aу 01H: ┐с Лы 02H: ▓на дисплей 03H: ┐Aux 04H: ▓Aux 05H: ▓на C 06H: консольный ┐-▓ 07H: нефильтрующий консольный ┐без эха 08H: консольный ┐без эха 09H: выль #у 0aH: ┴изованный ┐#и 0bH: Bить %┐а 0cH: ┐с очисткой 0dH: сбросить и 0eH: выбрать ый иэ 0fH: bть  с 10H: закрыть  с 11H: найти 1-й совпадающий  с 12H: найти .ий совпадающий  с 13H: удалить  с 14H: Hый  с 15H: SHый  с 16H: *ть  с 17H: переименовать  с 19H: ль ый иэ 1aH: ить ь 1bH: ль Пю т(ий и) 1cH: ль Пю т(любой и) 21H: Ыь @ого а 22H: SЫь @ого а 23H: ль <а  с 24H: ить ╩┼а @ого а 25H: ить ╛Fя 26H: *ть префикс Aного 4а 27H: ┼@ого а 28H: S┼@ого а 29H: разобрать Уа 2aH: ль лу э 2bH: ить лу э 2cH: ль ╢э 2dH: ить ╢э 2eH: ить/сбросить Yь ╜и 2fH: ль ий ь 30H: ль r╝и э 31H: Яиться и остаться 6ным -- KEEP 32H: ль Пю о иах э(wо) 33H: ить/dуровень Дя Fй э 34H: ╩%а реентерабельности э 35H: ль ╛Fя 36H: ль свободную ^иа 37H: ить/d1-Yь (wо) 38H: ль/ить Пю $ы 39H: *ть новое kе -- MKDIR 3aH: удалить kе -- RMDIR 3bH: ить ое kе э-- CHDIR 3cH: *ть gь а 3dH: bть gь а 3eH: закрыть gь а 3fH:  gь 40H: Sв  gь 41H: удалить  42H: ить тель а -- LSEEK 43H: ить/d╚а -- CHMOD 44H: Дь в/в а -- ┘ 45H: дублировать gь а -- DUP 46H: Vить gь -- FORCDUP 47H: ль ое kе э 48H: ;ить ^(ль ╩_) 49H: освободить ┼расределенной _ 4aH: сжать Ф:ить ┼_ 4bH: пить ФЭзить Aу -- EXEC 4cH: Яить Aу -- EXIT 4dH: ль Зоа Aы -- WAIT 4eH: найти 1-й совпадающий  4fH: найти .ий совпадающий  54H: ль Yь ╜и э 56H: переименовать/переместить  57H: ить/d╢/лу а 59H: ль :енную Пю об aе 5aH: *ть уникальный ╖ный  5bH: *ть новый  5cH: ─ать/раз─ать вк у 5eH: =е  сети 5fH: Vение в сети 62H: ль ╩префикса Aного 4а kяP─ Общее kе ие ┼и эи · Темы помощи Главное меню W]\")1:BK"*1;BL "+1BO ".1?BP "/1@BQ  " 01 AB R   " 11 BB S  !" 21 CB T  "" 31 DB U  #" 41 EB V$"51FBW%"61GBX&"71HBY'"81IBZ("91JB[ э  эпо группам Fя э 00H Terminate 11H Fnd1st с 27H ╥RdmBlk 38H CntryInfo 49H Mem Free 01H Kybd Input 12H FndNxt с 28H WritRdmBlk 39H MkDir 4aH Mem SetBlk 02H Dspl Char 13H Delete с 29H Parse Fnam 3aH RmDir 4bH Exec 03H Aux Input 14H ╥Seqс 2aH Get Date 3bH ChDir 4cH Exit 04H Aux Output 15H WritSeqс 2bH Set Date 3cH Create File 4dH Wait 05H Prn Output 16H Create с 2cH Get Time 3dH Open File 4eH Fnd1stFile 06H Console I/O 17H Rename с 2dH Set Time 3eH Close File 4fH FndNxtFile 07H NoEchoUf Inp 19H Get CurDsk 2eH Set Verify 3fH ╥File 54H Get Verify 08H NoEcho Inp 1aH Set ь 2fH Get ь 40H ╠File 56H Rename 09H Dspl String 1bH GetтCur 30H Get Versn 41H Delete File 57H Time Stamp 0aH Bufrd Input 1cH GetтDsk 31H Keep Proc 42H Lseek File 59H Xtnded Err 0bH Input ╧21H ╥RdmRec 32H шInfo 43H ChMod (attr) 5aH Temp File 0cH Clr & Input 22H WritRdmRec 33H °Chk 44H Ioctl 5bH New File 0dH Reset ш 23H FileSizс 34H эActive 45H Dup ▌ 5cH Lock File 0eH Set Curш 24H SetRndmBlk 35H GetVector 46H Redir(Cdup) 5eH Netwk Misc 0fH Open с 25H Set Vector 36H шFree 47H Get CurDir 5fH NetwkRedir 10H Close с 26H Create ╒ 37H Switchar 48H Mem Alloc 62H Get ╒ 8Щ2f \CN cB эFn 00H: Яить Aу┌ ─╥─╥=─│ │ ║ AH ║ 00H└ ─╢ CS ║ 4╒Яающегося ?а┌ ─╫─╫=─│ о ║ s ║ (неEменим)└ ─╨─╨=─h: Zает е на ╛Яения в ╒(оит в роди- тельский ?). Идентична  ┌20H Terminate. 9 CS еен ть на ╒. ╕ет ╛ы Fй э22H-24H (Яение, Ё-°и Критическая aа), я Ця, сохра- ненные в родительском ╒. пяет сброс овых ┴ов. ы ены └предварительно закрыты, аих за изме- нилась.Ье: Проще и более аккуратно - Оовать  ю эFn 4cH Exit.P─См.же:  я ?ами  э *w6i ╢ _B эFn 01H: ┐с Лы┌ ─╥─╥=─│ │ ║ AH ║ 02H├ ─╫─╫=─│ о ║ AL ║ 1, Mенный из &ого ┐а└ ─╨─╨=─h: Считывает (ожидает) 1со &ого │ного а. Отображает т 1на &ое оное о (эхо). Eраспознавании Ё-°пяется ┌23H.Ье: ┐:енных К■(F1-F12, PgUp, Би т.п.) требует двух обращений к й  . [ый ▒╣щает AL=0. Второй ▒╣щает в AL :енный З■.См.же:  1ьного в/в!  э )w4 i _B эFn 02H: ▓на дисплей┌ ─╥─╥=─│ │ ║ AH ║ 02H└ ─╢ DL ║ 1, ▓имый на &ый ▓┌ ─╫─╫=─│ о ║ s ║└ ─╨─╨=─h: Посылает 1из DL на &ый ▓. nет 1Backspace (■8), Wая Бвлево на одну Nю и оставляя его в новой Nи. Eобнаружении Ё-°пяется ┌23H.См.же:  1ьного в/в!  э  _$М. ┌B эFn 03H: Вспомогательный ┐┌ ─╥─╥=─│ │ ║ AH ║ 03H├ ─╫─╫=─│ о ║ AL ║ 1, Mенный со &ого вспомогательного -ва└ ─╨─╨=─h: Считывает (ожидает) 1со &ого вспомогательного уст- ройства, COM1 ФAUX и ╣щает т 1в AL.Ье: ┐не ┴изуется и еен опрашиваться (не управляется преры- ваниями). EЩе эJAUX (COM1) Тируется : 2400 бод без Bки на четность 1 стоп-╞ 8-╞овые слова Жа эMODE Оуется жки иных характеристик.См.же:  1ьного в/в ┌14H Iд.Jы  э )  _$М. ┌B эFn 04H: Вспомогательный ▓┌ ─╥─╥=─│ ┐ ║ AH ║ 04H└ ─╢ DL ║ 1, Ыываемый на &ое вспомогательное -во┌ ─╫─╫=─│ о ║ s ║└ ─╨─╨=─h: Посылает 1в DL на &ое вспомогательное о, COM1 ФAUX. См. h эFn 03H Auxiliary Input.См.же:  1ьного в/в ┌14H Iд.Jы  э  _$П.сB эFn 05H: ▓на C┌ ─╥─╥=─│ │ ║ AH ║ 05H└ ─╢ DL ║ 1, Ыываемый на &ый C┌ ─╫─╫=─│ о ║ s ║└ ─╨─╨=─h: Посылает 1в DL на &ое о Cа, lо LPT1.Ье: Жа эMODE перенаправить т ▓в Hый J.См.же:  1ьного в/в ┌17H Jы Cа  э 9w/w<╢ _B эFn 06H: Консольный ┐-▓┌ ─╥─╥=─│ │ ║ AH ║ 06H└ ─╢ DL ║ 1(от 0 до 0feH), посылаемый на &ый ▓ ║ ║ 0ffH Ъс ┐а со &ого ┐а┌ ─╫─╫=─│ о ║ ZF ║ Сброшен (NZ), а1готов ══╦═ EЪсе ┐а└ ─╢ AL ║ Считанный 1, аZF сброшен ═╝ (т.е. EDL=0ffH) ╙─╨=─h: EDL = 0ffH пяет ┐с консоли "без ожидания", ╣щая взведенный нуля (ZF), ана консоли sготового 1а. а1готов, сбрасывает ZF (NZ) и ╣щает считанный 1в AL. аDL не равен 0ffH, то DL направляется на &ый ▓.Ье: Не Bяет Ё-°. ░йте дважды ж:енного ■.См.же:  1ьного в/в!  э -w( ╢  _B эFn 07H: Нефильтрующий консольный ┐без эха┌ ─╥─╥=─│ │ ║ AH ║ 07H├ ─╫─╫=─│ о ║ AL ║ 1, Mенный  &ый ┐└ ─╨─╨=─h: Считывает (ожидает) 1со &ого │ного а и ╣щает т 1в AL. Не фильтрует: Не Bяет на Ё-°, backspace и т.п.Ья: ░йте дважды ж┐а :енного 1а ■. Оуйте Fn 0bH жBки %а (ане хотите ожиль нажатия Ки).См.же:  1ьного в/в!  э -w? i( ╢ _B эFn 08H: Консольный ┐без эха┌ ─╥─╥=─│ │ ║ AH ║ 08H├ ─╫─╫=─│ о ║ AL ║ 1, Mенный  &ый ┐└ ─╨─╨=─h: Считывает (ожидает) 1со &ого │ного а и ╣щает т 1в AL. Eобнаружении Ё-°пяется Fе ┌23H.Ье: ░йте дважды ж┐а :енного 1а ■.См.же:  1ьного в/в!  э  w<  8B _B эFn 09H: Выль #у на дисплей┌ ─╥─╥=─│ │ ║ AH ║ 09H└ ─╢ DS:DX ║ ╩#и, заканчивающейся 1ом '$' (■24H)┌ ─╫─╫=─│ о ║ s ║└ ─╨─╨=─h: #а, исключая Яающий ее 1'$', посылается на &ый ▓. 1ы Backspace nются Мв  02H цChar. lо, перейти на новую #у, ║ают в пару CR/LF (■13H и ■0aH). #и, +ащие '$', ~выль  40H ╠▌(BX=0).См.же:  1ьного в/в!  э $w%╢Ai "_B" #эFn 0aH: ┐#и в ┴┌ ─╥─╥=─│ │ ║ AH ║ 0aH└ ─╢ DS:DX ║ ╩│ного ┴а (смотри ниже)┌ ─╫─╫=─│ о ║ s ║ ┴+ит ┐, заканчивающийся 1ом CR (■0dH)└ ─╨─╨=─h: E│е ┴по ╩у DS:DX еен └олен : ┌───┬───┬───┬───┬───┬───┬─ ─ ─ │max│ ? │ ? ? ? ? ? MAX - максимально допустимая └───┴───┴───┴───┴───┴───┴ ─ ─ за ┐а (от 1 до 254) Eое ┴заполнен мми .им образом: ┌───┬───┬───┬───┬───┬───┬─ ─ ─ │max│len│ T E X T 0dH LEN - кительная за мх └───┴───┴───┴───┴───┴───┴ ─ ─ без Яающего CR (здесь - 04H). 1ы считываются со &ого ┐а вплоть до CR (■0dH) Фдо достижения зы MAX-1. адостигнут MAX-1, ║ается консольный звонок жНого очередного 1а, пока не ┬ введен ╣т каретки CR (нажатие Enter). Второй ╟┴а заполняется кительной зой введенной #и, не считая Яающего CR. Iдний 1в ┴е - ┤CR (Вый не засчитан в ╟е зы). 1ы в ┴е (║ая LEN) в момент ▒а Оуются М "шаблон". В ?е ┐а кительны lые Ки редакти- рования: Esc выдает "\" и yет с zла, F3 выдает ┴до конца шаблона, F5 выдает "@" и (яет ую #у Мшаб- лон, и т.д. ├о :енных Зов ■игнорируются. Eраспознавании Ё-°пяется Fе ┌23H (┴остается неХным).См.же:  1ьного в/в!  э 2w6 i) . 4  _$ОB эFn 0bH: Bить %┐а┌ ─╥─╥=─│ │ ║ AH ║ 0bH├ ─╫─╫=─│ о ║ AL ║ 0ffH, а1вен со &ого ┐а└ ─╢ ║ 0, аsвного 1а ╙─╨=─h: Bяет состояние &ого ┐а. Eраспознавании Ё-°пяется ┌23H.Замечения: Оуйте Z ями 01H 07H и 08H, избежать ожида- ния нажатия Ки. Эта  я дает простой неразрушающий способ Bки Ё-° в ?е зных вычислений Фдругой mки, lо не тре- бующей ┐а. Oет вам снимать счет по нажатию Ё-°.См.же:  1ьного в/в ┌16H  э .w1 1  1 11 _B эFn 0cH: ┐с очисткой┌ ─╥─╥=─│ ┐ ║ AH ║ 0cH└ ─╢ AL ║ r ┐а э(01H, 06H, 07H, 08H Ф0aH)┌ ─╫─╫=─│ ▓ ║ s ║└ ─╨─╨=─h: Очищает ┴опережающего ┐а &ого ┐а, а Чвызы- вает  ю ┐а, нную в AL. заставляет 0у ожиль ┐очередного 1а. .ие Ця допустимы в AL: 01H ┐с Лы1 06H ┐с консоли1 07H Нефильтрующий без эха1 08H ┐без эха1 0aH ┴изованный ┐См.же:  1ьного в/в!  э (0@ eB эFn 0dH: Сброс иа┌ ─╥─╥=─│ │ ║ AH ║ 0dH├ ─╫─╫=─│ о ║ s ║└ ─╨─╨=─h: Сбрасывает (пишет на и) ╡овые ┴а. а<а Хился, ой еен └предварительно закрыт (Eпомощи  й 10H Ф3eH).См.же: Смешанные  э"  э + ф v b%ИB эFn 0eH: ить ий иэ┌ ─╥─╥=─│ │ ║ AH ║ 0eH└ ─╢ DL ║ rиа (0=A, 1=B и т.д.), Вый становится им┌ ─╫─╫=─│ о ║ AL ║ общее иоводов в 0е└ ─╨─╨=─h: и, нный в DL, становится им (ым) в э. Bка: Оуйте  ю 19H "ль ий" жBки. В 9е AL ╣щается иоводов ╡х типов, ║ая ые ии и "Аие" ии (МB: в 1-floppy 0е).╝и: э3.0+ AL имеет то же Це, и Це LASTDRIVE, ука- занное в е ї.SYS, и по ю равно 5.См.же:  овой 0ы ┌11H (Дь оборуд.)  э &Ы yф  a`B эFn 0fH: bть  с┌ ─╥─╥=─│ │ ║ AH ║ 0fH└ ─╢ DS:DX ║ ╩неbтого с┌ ─╫─╫=─│ о ║ AL ║ 0 аbт без `(и сзаполнен)└ ─╢ ║ 0ffH аобнаружена aа и не └bт ╙─╨=─h: , описываемый неbтым с, еен !овать в ем kи на ие, специфицированном в с(0=ий, 1=A, 2=B, и т.д.). ане !ует, ╣щается AL=0ffH. bвается в 8е ,ости. аполе Drv в сравно 0 в момент ▒а, то оно заполняется rом его иовода (1=A, 2=B, и т.д.). Поле сCurBlk ется в 0. Поле сRecSize ется в 80H. Поля лы и <а а в сются из kя.Ье:  э2.0+, cе на rа (▌), ГОРАЗДО удобнее в работе.См.же: с-iи ▌-cй в/в  э $ЫI  a`B эFn 10H: Закрыть  с┌ ─╥─╥=─│ │ ║ AH ║ 10H└ ─╢ DS:DX ║ ╩bтого с┌ ─╫─╫=─│ о ║ AL ║ 0 азакрыт без `└ ─╢ ║ 0ffH ане найден там, где он был EOpen Fn 0fH ╙─╨=─h: еен находиться на своем [оzльном месте в ем kи иа, на Вом он был bт. анайден, kе обновляется, овые ┴а сбра- сываются, и ╣щается AL=00H. ане найден, kе не обновляется, происходит масса малоEятных вещей, и в конце концов ╣щается AL=0ffH.См.же: с-iи ▌-cй в/в  э  &Ы8 8  Ъ+Ы  ЬфP b+ B эFn 11H: Найти 1-й совпадающий  с┌ ─╥─╥=─│ │ ║ AH ║ 11H└ ─╢ DS:DX ║ ╩неbтого с(Уа +ать '?')┌ ─╫─╫=─│ о ║ AL ║ 0 аподходящее Унайдено (и ьзаполнена)└ ─╢ ║ 0ffH аподходящего имени s ╙─╨=─h: В ем kи эищется Уа, )ующее шаблону, заданному в спо ╩у DS:DX. Eнеудаче ╣щается AL=0ffH. аУнайдено, AL очищается, в 1-й ╟ьпомещается r иовода (A=1, B=2, и т.д.), а в .ие 32 ╟а помещается kя жнайденного а. ~Оовать E▒е :енный с, выбирать ы с нными ╚ами. В м случае в ьпомещаются ╟0ffH, 7 ╟нулей, rиа и kя. В любом случае еен └Gлен корректный неbтый с.  я 12H Find Next сОуется жпоиска .их имен.Ья: авы намереваетесь искать Iдующие ы, не пяйте ни- Мих iй в/в с найденным ом. Скопируйте скуда-нибудь в другое место, прежде чем bвать его.  я э2.0+ 4eh "Найти 1-й " легче в Оовании; она Rивает lый ат d:\путь\Уа.См.же:  овой 0ы эFn 1aH Уст.ь  э  &Ы> '7  Ъ% Ы b+ A эFn 12H: Найти .ий совпадающий  с┌ ─╥─╥=─│ ┐ ║ AH ║ 12H└ ─╢ DS:DX ║ ╩неbтого с(Уа +ать '?')┌ ─╫─╫=─│ о ║ AL ║ 0 аподходящее Уа найдено (и ьзаполнена)└ ─╢ ║ 0ffH аподходящее Уне найдено ╙─╨=─h: Оуется I▒а 11H "Найти 1-й с" с обобщенным именем а. Ный Iдующий ▒заполняет ьочередным подходящим ом kя и ╣щает AL=00H. аподходящих имен больше s, ╣щается AL=0ffH. 7ируемая pь в с(яет Пю, uую ж проеения поиска. Пому не bвайте смежду ▒ами.См.же:  овой 0ы эFn 1aH Уст.ь  э &Ы3 Ы( Ь b+C@ эFn 13H: Удалить  с┌ ─╥─╥=─│ │ ║ AH ║ 13H└ ─╢ DS:DX ║ ╩неbтого с(Уа +ать '?')┌ ─╫─╫=─│ о ║ AL ║ 0 аудален└ ─╢ ║ 0ffH ане найден Фвотвергнут ╙─╨=─h: Эта  я удаляет ╡подходящие ы в ем kи ука- занного иа согласно спецификации в с. аподходящих ов не найдено, Фавотвергнут (М Eпопытке удалить с ╚ом ╥-Only),  я ╣- щает в 9е AL Це 0ffH.См.же:  овой 0ы эFn 41H Удалить   э $Ы2 Ы Ы"  a`B эFn 14H: Hый  с┌ ─╥─╥=─│ │ ║ AH ║ 14H└ ─╢ DS:DX ║ ╩bтого с┌ ─╫─╫=─│ о ║ AL ║ 0 ае было успешным и ь+ит ме└ ─╢ ║ 1 адостигнут Еа (EOF) и ме не были считаны ║ ║ 2 аь+ сRecSiz оит за 4(я не было) ║ ║ 3 аEOF и считана усеченная Ыь (дополнена нулями) ╙─╨=─h: Читает сRecSize ╟с ╩а в е, специфицированного полями CurBlk и CurRec, в ь. Ч)енно увеличивает Ця этих полей в с. Zzлом Hой mки а сбрасывайте CurRec в 0, М я 0fH Open сне Тирует поле.См.же: с-iи ▌-cй в/в  э $Ы Ы Ы'  )  a`B эFn 15H: SHый  с┌ ─╥─╥=─│ │ ║ AH ║ 15H└ ─╢ DS:DX ║ ╩bтого с┌ ─╫─╫=─│ о ║ AL ║ 0 аЫь была успешной└ ─╢ ║ 1 аaа Uя иа (ме не Ыаны) ║ ║ 2 аь+ сRecSize оит за 4(Ыи не было) ╙─╨=─h: Пишет сRecSize ╟из ьв по ╩у, специфицированному полями CurBlk и CurRec. Ч)енно увеличивает Ця этих полей в с. Zzлом Hой mки а сбрасывайте Це CurRec в 0, ибо  я 0fH Open сне Тирует поле.Ье: э┴изует ме, Ыывая полный 3за один раз.См.же: с-iи ▌-cй в/в  э &Ы Ы0 ,ф  a`B эFn 16H: *ть  с┌ ─╥─╥=─│ │ ║ AH ║ 16H└ ─╢ DS:DX ║ ╩неbтого с┌ ─╫─╫=─│ о ║ AL ║ 0 а*н без `(и сзаполнен)└ ─╢ ║ 0ffH австретилась aа и не └*н ╙─╨=─h: , специфицированный неbтым с, *ется в ем оглав- лении на ие, нном в с(0=ий, 1=A, и т.д.). сзаполняется аналогично  0fH Open с. а!ует в момент ▒а, его kя ис- пользуется ж*ваемого а, а за а сбрасывается в 0.Ье: ▌-cе  э2.0+ гораздо удобнее в работе.См.же: с-iи ▌-cй в/в  э Ы Ы) Ь b+SB эFn 17H: Переименовать  с┌ ─╥─╥=─│ │ ║ AH ║ 17H└ ─╢ DS:DX ║ ╩с'ого ата┌ ─╫─╫=─│ о ║ AL ║ 0 апереименован успешно└ ─╢ ║ 0ffH не найден, новое Ууже !ует, другие aи ╙─╨=─h: Переименовывает в ем ом kи. Оуйте .ую "у сжй  : ╔══ 0=ий и, 1=A, 2=B, и т.д.-. за ┌─╨─┬─┬ ─┐ +0 0cH │drv│ F I L E N A M E │ E X T │ ═ старое У ├───┴───┴───┴───┴───┴───┼───┴───┴───┴───┴───┴───┘ +0cH 6 │ Шо │ ├───┴───┴───┴───┴───┴───┴─┬ ─┐ +11H 0bH │ F I L E N A M E │ E X T │ ═ новое У └───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴─┘ Ное из имен +ать обобщенные 1ы "?":  В старом имени обобщенные 1ы Eводят к поиску и переимено- ванию ╡х подходящих ов в ем kи.  В новом имени 1"?" озzет, в й Nи следует оставить тот же 1, в аналогичной Nи старого имени.Ье: Эта  я Oет переименовать само kе, Оуя :енный сс подходящим ╚ом ж"старого имени".См.же:  овой 0ы эFn 56H Переименов/Удал  э  b%B эFn 19H: ль ий иэ┌ ─╥─╥=─│ │ ║ AH ║ 19H├ ─╫─╫=─│ о ║ AL ║ rего ого иа (0=A, 1=B, и т.д.)└ ─╨─╨=─h: ╣щает rиовода его умалчивемого иа э.См.же:  овой 0ы 0eH Уст.тек.и  э  # ( P. QЩ 1B эFn 1aH: ить ╩ь┌ ─╥─╥=─│ │ ║ AH ║ 1aH└ ─╢ DS:DX ║ ╩жь┌ ─╫─╫=─│ о ║ s ║└ ─╨─╨=─h: ет ╩ь.  ╡с-cе iи работают с ь.  эне Oет iям в/в пересекать границу 4а.   поиска: 11H 12H 4eH и 4fH помещают ме в ь.  ьглобальна, пому будьте осторожны, назzя ее в рекурсивной Фреентерабельной процедуре.  EЩе Aы ее ьется по -ению 80H отqьно ╒.P─См.же: 2Fh ль ь+  э   u. 8@ 4 ф  u*"/844B эFn 1bH: ль Пю т(ий и)┌ ─╥─╥=─│ │ ║ AH ║ 1bH├ ─╫─╫=─│ о ║ DS:BX ║ ╩╟а тID (отражающего тип иа)└ ─╢ DX ║ ╡го Йов (единиц ;ения) на ие ║ AL ║ 3ов на Й ║ CX ║ ╟на 3 ╙─╨=─h: ╣щает Пю о <е и типе ого иа. <иа в ╟ах = (DX * AL * CX) Ищите свободную ^ ями 36h шFree Ф32h шInfo.╝и: э1.x держит тв _и ╣щает DS:BX => т. э2.0+ держать в _лишь порцию ╡й т.Предупр: Эта  я Хяет +имое 9а DS.См.же:  а т  1cH 36H 32H  э  u !  u*!/844B эFn 1cH: ль Пю т(любой и)┌ ─╥─╥=─│ │ s ║ AH ║ 1cH└ ─╢ DL ║ rиа (0=ий, 1=A, и т.д.)┌ ─╫─╫=─│ о ║ DS:BX ║ ╩╟а тID (отражающего тип иа)└ ─╢ DX ║ ╡го Йов (единиц ;ения) ║ AL ║ 3ов на Й ║ CX ║ ╟на 3 ╙─╨=─h: Аналогична  1bH Get тCur, с той разницей, 9DL ет и, жВого вы хотите Mить Пю.╝и: Невна жэ1.x.См.же:  а т  1bH 36H 32H  э  $Ы2  !Ы ЫЫ  a`B эFn 21H: @ую Ыь а┌ ─╥─╥=─│ │ ║ AH ║ 21H└ ─╢ DS:DX ║ ╩bтого с┌ ─╫─╫=─│ о ║ AL ║ 0 ае было успешным и ьзаполнена мми└ ─╢ ║ 1 адостигнут Еа (EOF) и я не было ║ ║ 2 аь+ сRecSize оит за 4(я s) ║ ║ 3 встречен EOF и считана усеченная Ыь (дополнена нулями) ╙─╨=─h: Eводит поля сCurBlk и CurRec в )ие с R√omRec, Ч читает RecSize ╟по нному ╩у в е, помещая считанные ме в ь. Поле RecSize в момент ▒а ено +ать зу Ыи, а поле R√omRec в с- rтребуемой Ыи.См.же: с-iи ▌-cй в/в  э  $Ы !Ы Ы#   Ы  a`B эFn 22H: S@ую Ыь а┌ ─╥─╥=─│ │ ║ AH ║ 22H└ ─╢ DS:DX ║ ╩bтого с┌ ─╫─╫=─│ о ║ AL ║ 0 аЫь была успешной└ ─╢ ║ 1 EUи иа ║ ║ 2 аь+ сRecSize оит за 4(sЫи) ╙─╨=─h: Eводит поля сCurBlk и CurRec в )ие с R√omRec, Ч пишет RecSize ╟из ьна ипо нному ╩у в е. В момент ▒а поле RecSiz ено +ать зу Ыи, а поле R√omRec в с- rтребуемой Ыи.См.же: с-iи ▌-cй в/в  э &Ы,Ы ?+D bB эFn 23H: ль <а  с┌ ─╥─╥=─│ │ ║ AH ║ 23H└ ─╢ DS:DX ║ ╩неbтого с┌ ─╫─╫=─│ о ║ AL ║ 0 анайден└ ─╢ ║ 0ffH ане найден в ем kи ╙─╨=─h: ет поле R√omRec в сравным числу Ыей <а RecSize ╟, +ащихся в е. Це RecSize ено └задано в момент ▒а. ERecSize, равном 1, R√omRec ╣щает 4-╟овый <а в ╟ах. Вам оказаться проще fить <а   ю 3dH Open ▌с Iдующей 42H Lseek ▌(EAL=2).См.же:  овой 0ы  э $Ы,Ы  aDB эFn 24H: ить ╩@ой Ыи в е┌ ─╥─╥=─│ │ ║ AH ║ 24H└ ─╢ DS:DX ║ ╩bтого с┌ ─╫─╫=─│ о ║ s ║└ ─╨─╨=─h: ет поле R√omRec в сна овый ╩, соответст- вующий Цям полей CurBlk и CurRec.См.же: с-iи 42H Lseek ▌  э  7B эFn 25H: ить ╛Fя┌ ─╥─╥=─│ │ ║ AH ║ 25H└ ─╢ AL ║ rFя ║ DS:DX ║ ╛Fя: ╩Aы mки Fя┌ ─╫─╫=─│ о ║ s ║└ ─╨─╨=─h: ет Це а  ы ╛ов Fй ж Fя с rом AL равным DS:DX. равносильно Ыи 4-╟ового ╩а в 0:(AL*4), но, в отличие от прямой Ыи, эздесь знает, вы делаете, и гарантирует, в момент Ыи Fя будут за─аны.Предупр: Не забудьте восстановить DS (аuо) Iго ▒а.См.же: 35H ль ╛Fя  э  :Щ& h/ i9 j е$g?N #ЩB эFn 26H: Построить ╒┌ ─╥─╥=─│ │ ║ AH ║ 26H└ ─╢ DX ║ ╩4а (]а) жнового ╒ ║ CS ║ 4╒, Оуемого Мшаблон жнового ╒┌ ─╫─╫=─│ о ║ s ║└ ─╨─╨=─h: ет ╒жпорождаемого ?а по ╩у DX:0.  ий ╒(100H ╟, yя с CS:0), копируется в DX:0  поле MemTop )енно корректируется  ╛ы Terminate, Ё-°и Critical Error копируются в ╒ из ╛ов Fй ┌22H, ┌23H и ┌24H Iго вы е Эзить Aу с иа и Zать ей е посредством FAR JMP. См. Юок EXE по поводу Эзки ов в EXE-ате.Ье: авы перехватываете ┌21H, позаботьтесь о помещении в стек корректного CS:IP. Еще лучше Оовать  ю 4cH (EXEC).P─См.же: Префикс Aного 4а (╒)  э $Ы,  !Ы: Ы  a`B эFn 27H: @ый ┼а┌ ─╥─╥=─│ │ ║ AH ║ 27H└ ─╢ DS:DX ║ ╩bтого с ║ CX ║ считываемых Ыей┌ ─╫─╫=─│ о ║ AL ║ 0 ае успешно и ьзаполнена мми└ ─╢ ║ 1 адостигнут Еа (EOF) и ме не считаны ║ ║ 2 аь+ с(RecSize * CX) оит за границу 4а ║ ║ 3 аEOF и считана усеченная порция (дополнена нулями) ║ CX ║ кительное считанных Ыей ╙─╨=─h: Читает tЫей из а, yя с ового ╩а, специфицированного полем R√omRec в с. Помещает ме в ^, yя с ╩а ь. считанных ╟= сRecSize*CX. Поля R√omRec, CurBlk и CurRec корректируются, ть на .ую Ыь ([ую Ыь за прочитанными).См.же: с-iи ▌-cй в/в  э $Ы !Ы2 Ы  a`B эFn 28H: S@ый ┼а┌ ─╥─╥=─│ │ ║ AH ║ 28H└ ─╢ DS:DX ║ ╩bтого с ║ CX ║ Ыываемых Ыей (аCX=0, уст. <а)┌ ─╫─╫=─│ о ║ AL ║ 0 аЫь успешна└ ─╢ ║ 1 EUи иа ║ ║ 2 аь+ с(RecSize * CX) оит за границу 4а ║ CX ║ кительное Ыанных Ыей ╙─╨=─h: Ыывает tЫей в , yя с ового ╩а, специфицированного полем R√omRec в с. ме берутся из па- мяти, yя с ╩а ь. Ыываемых ╟=(RecSize * CX). аCX=0 E▒е, то <а усекается Ф:яется до величины R√omRec * RecSize (ниМие ме не Ыываются).См.же: с-iи ▌-cй в/в  э AЫ ЫB! "эFn 29H: Разобрать Уа┌ ─╥─╥=─│ │ ║ AH ║ 29H└ ─╢ DS:SI ║ ╩исходной овой #и жразбора ║ ES:DI ║ ╩┴а ж5ирующего неbтого с ║ AL ║ ╞овые и, ющие опции разбора (см. ниже)┌ ─╫─╫=─│ о ║ AL ║ 0 а5ирующий сне +ит обобщенных 1ов└ ─╢ ║ 1 а5ирующий с+ит обобщенные 1ы ║ ║ 0ffH аxо обоЦе иа в имени а ║ DS:SI ║ Хен: ет на 1сразу вслед за именем а ║ ES:DI ║ не Хен: ет на неbтый с ╙─╨=─h: *ет неbтый сиз #и а Ф\а Жы. , yя с DS:SI, анализируется МУа в ате D:FILENAME.EXT, и ┴по ╩у ES:DI заполняется Мсоответ- ственно атированный с. ═ Эта  я НЕПРИМЕНИМА, аовая #а +ит путь. lо она Оуется жперевода в верхний 9и удаления точки из имени а, введенного с Лы. Eм '*' перево- дится в ряд '?'. Эта  я Oет предусмотреть е в целевом с({, заранее заполнить :ение = "WKS"). Способ разбора fяется ╞овыми ами в AL: ╓7┬6┬5┬4┬3┬2┬1┬0╖ ║0 0 0 0│ │ │ │ ║ ╙─┴─┴─┴─┴╥┴╥┴╥┴╥╜ ╞% маска ║ ║ ║ ╚═ 0: 1=отбросить ведущие >ители (a & 01H) ║ ║ ╚═══ 1: 1=ив с= е (a & 02H) ║ ╚═ 2: 1=Уа в с= е (a & 04H) ╚═ 3: 1=:ение в с= е (a & 08H)См.же:9  э 9ф ф .-B эFn 2aH: ль 0ную лу┌ ─╥─╥=─│ │ ║ AH ║ 2aH├ ─╫─╫=─│ о ║ AL ║ день недели (0=Вск, 1=Пнд,...6=Суб) э3.0+└ ─╢ CX ║ год (1980 до 2099) ║ DH ║ месяц (1 до 12) ║ DL ║ день (1 до 31) ╙─╨=─h: ╣щает ую лу, Мона известна 0е.╝и: э2.x не гарантирует ╣та в AL Ця дня; ╡╝и 1.0+ ╣щают правильный день недели. ╝и до 2.1 имеют проблемы с Tом лы.См.же: 2cH ль ╢ 2bH Уст. лу  э  .,B эFn 2bH: ить 0ную лу┌ ─╥─╥=─│ │ ║ AH ║ 2bH└ ─╢ CX ║ год (1980 до 2099) ║ DH ║ месяц (1 до 12) ║ DL ║ день (1 до 31)┌ ─╫─╫=─│ о ║ AL ║ 0 ала корректна└ ─╢ ║ 0ffH ала некорректна ╙─╨=─h: ет 0ную лу э.См.же: 2cH Уст.╢ 2aH ль лу  э ВН /,B эFn 2cH: ль ╢э┌ ─╥─╥=─│ │ ║ AH ║ 2cH├ ─╫─╫=─│ о ║ CH ║ часы (0 до 23)└ ─╢ CL ║ минуты (0 до 59) ║ DH ║ секунды (0 до 59) ║ DL ║ сотые доли секунды (0 до 99) ╙─╨=─h: ╣щает ее ╢, Моно известно 0е.Ье: Поскольку 0ные часы имеют частоту 18.2 тиков в секунду (интервал 55мс), DL имеет точность 0.04 сек. См. ┌08H и ┌15H о 0ных часах.См.же: 2dH Уст.╢ 2aH ль лу  э  .-B эFn 2dH: ить ╢э┌ ─╥─╥=─│ │ ║ AH ║ 2dH└ ─╢ CH ║ часы (0 до 23) ║ CL ║ минуты (0 до 59) ║ DH ║ секунды (0 до 59) ║ DL ║ сотые доли секунды (0 до 99)┌ ─╫─╫=─│ о ║ AL ║ 0 а╢корректно└ ─╢ ║ 0ffH а╢некорректно ╙─╨=─h: ет 0ное ╢э.См.же: 2cH ль ╢ 2bH Уст. лу  э SSB эFn 2eH: ить/сбросить Yь ╜и┌ ─╥─╥=─│ │ ║ AH ║ 2eH└ ─╢ AL ║ 0 отключить ╜ю ║ ║ 1 ║ить ╜ю┌ ─╫─╫=─│ о ║ s ║└ ─╨─╨=─h: ет, ена ли эверифицировать (считывать обратно) Ный 3, Ыываемый на и. замежет iи Ыи на и, но гарантирует максимальную надежность Ыи.  я 56H Get Verify ╣щает ий %╜и э.См.же: эFn 56H.  э )    B эFn 2fH: ль ╩ей ь┌ ─╥─╥=─│ │ ║ AH ║ 2fH├ ─╫─╫=─│ о ║ ES:BX ║ ╩zла ей ь└ ─╨─╨=─h: ╣щает ╩zла pи ┐а-▓а (ь). Поскольку ьглобальна ж╡х ?ов, в рекурсивной процедуре ({, Eпроходе по дереву kя) потребоваться (ить ╩ь, а вIдствии восстановить его посредством  1aH "Уст. ь".Ье: Эта  я Хяет 4ный 9ES.См.же: 1aH Уст.ь,  э ф& ф ф  ф^B эFn 30H: ль r╝и э┌ ─╥─╥=─│ │ ║ AH ║ 30H├ ─╫─╫=─│ о ║ AL ║ старший r╝и└ ─╢ AH ║ младший r╝и ║ BX,CX ║ 0H э3.0+ ╙─╨=─h: ╣щает в AX Це его rа ╝и э. {, жэ3.2, в AL ╣щается 3, в AH - 2.Ье: ав AL ╣щается 0, ~предполагать, работает э более ранней ╝и, чем э2.0.╝и: э2.x не гарантирует очистки 9ов CX и BX.См.же: ╝и э  Пи о 0е  э  O5 O-l c*xB эFn 31H: Яиться и остаться 6ным - KEEP┌ ─╥─╥=─│ │ ║ AH ║ 31H└ ─╢ AL ║ Зоа ║ DX ║ объем _, оставляемой 6ной, в ]ах┌ ─╫─╫=─│ о ║ s ║ (неEменим)└ ─╨─╨=─h: оит в родительский ?, (яя Зоа в AL. Зоа ~Mить   ю 4dH Wait. эет zльное ;ение _, Мспецифици- ровано в DX, и ╣щает е родительскому ?у, оставляя нную ^6ной (╟= DX * 16). Эта  я перекрывает  ю ┌27H, Вая не ╣щает З оа и неспособна ить 6ную Aу, большую 64K.См.же:  я ?ами Щи Яение  э цЯ#н5п-Я Я" kB эFn 32H: ль Пю эо ие┌ ─╥─╥=─│ │ ║ AH ║ 32H НЕТ В ДОКУМЕНТАЦИИ└ ─╢ DL ║ rиа (0=ий, 1=A, и т.д.)┌ ─╫─╫=─│ о ║ AL ║ 0 аDL задавал корректный и│ ║ FF ║ 0ffH аизадан xо│ ║ DS:BX ║ ╩┼а Пи иа жЪшенного а└ ─╨─╨=─h: ╣щает ┼Пи, представляющей интерес жDй и утФт, пяющих вк иу, Rиваемый бами , на уровне 3ов. vые иоводы (особенно неЭжаемые)  онируют исключи- тельно  свои бы . ие ии могут +ать xую Пю в Гой Ыи и  е >ов, де- лает очень трудным eие, {, <а Гого оглав- ления, числа  т, и т.п. ┼Пи иа +ит ╡ме ого рода в хорошо атированной "е. └единственным способом fить ╩ба а.Предупр: Хяет 4ный 9DS. Эта wная  я Хиться в будущих ╝ях.См.же: ┼Пи иа ┌25H/26H  э  i w iB эFn 33H: ить/d%Ё-°┌ ─╥─╥=─│ │ ║ AH ║ 33H└ ─╢ AL ║ 0 dий %Дя Ё-° ║ ║ 1 ить %Дя Ё-° ║ DL ║ требуемый %(0=OFF, 1=ON) (EAL=1)┌ ─╫─╫=─│ о ║ DL ║ ий %(0=OFF, 1=ON)└ ─╨─╨=─h: аAL=0, в DL ╣щается ий %Дя Ё-°. аAL=1, в DL ╣щается новый ий %. И%ON, эBяет на Ё-°с консоли жбольшин- ства  й (исключая 06H и 07H). Eобнаружении, пяется ┌23H (аоно не перехватывется, то снимает ?). И%OFF, эBяет на Ё-°лишь Eiях &ого в/в, &ой печати и &ых iях AUX.См.же: 0bH %┐а ┌23H  э  ц&8g)"''m6*g -c*-В;-B- .эFn 34H: ╩%а реентерабельности э┌ ─╥─╥=─│ │ ║ AH ║ 34H НЕТ В ДОКУМЕНТАЦИИ├ ─╫─╫=─│ о ║ ES:BX ║ ╩а ╔ности э└ ─╨─╨=─h: Эту wную  ю Оует PR┌(фоновый ?ор печатного спулинга) в момент его ки, он позд- нее fить, ~ли Оовать овые  э. E╣те из й  ES:BX +ит ╩внутреннего а э, ющего, пяется ли в мй момент Мая-либо функ- ция э. Испулеру PR┌требуется bть (ФОо- вать Мую-либо  ю э), он Bяет т . аES:[BX] +ит не 0, фоновая Aа (TSR, либо popup) НЕ ДОЛЖНА Оовать ниМих  й э. 6ные popup-Aы часто ╔изируются по Fю от таймера ФЛы. Мпроизойти в любой момент, не исключено, в т момент ┬пяться Мая-либо функ- ция э. атеперь popup ▒ет  ю э, разрушит стек эи, вероятно, Eведет к катастрофической aе. Путем Bки го а popup fить, возможны ли ▒ы  й э. , однако, осложняется тем фактом, Ў.COM и vые другие Aы проводят большую часть ╖и, Ъсив ┐с Лы   ю 0aH (ль #у). им образом,  почти ┤взведен, и на службу эналожено табу. Вы е выйти из положения, перехватывая ┌21H и отслеживая ▒ы  0aH. ИEходит ой Ъс, не пяйте его немедленно. Вместо го организуйте цикл, в Вом с vой задержкой ░йте  ю 0bH (ль %┐а). Циклите, пока не заметите, нажата Ка. Iго ~выйти из цикла и вызвать  ю 0aH. Понятно, Eом способе ┤су- ществует окно ╖и, в Вом проснувшийся popup без бо- язни Оовать  э. ~же перехватывать ┌28H, авы лю╞е рисковать.Предупр: Эта  я не документирована, и опираться на нее рискованно. ├о popup-Aперехватывают ┌21H и отслеживают %эиндивидуально (ибо им и Eходится отслеживать 0aH).См.же:  я ?ами ┌08H  я 0aH  э  'B эFn 35H: ль ╛Fя┌ ─╥─╥=─│ │ ║ AH ║ 35H└ ─╢ AL ║ rFя (00H до 0ffH)┌ ─╫─╫=─│ о ║ ES:BX ║ ╩mчика Fя└ ─╨─╨=─h: ╣щает Це ╛а Fя ж┌(AL); то есть, Эжает в BX 0:[AL*4], а в ES - 0:[(AL*4)+2].Предупр: Эта  я Хяет 4ный 9ES.См.же: 25H Уст. ╛Fя  э  4!B эFn 36H: ль свободную ^иа┌ ─╥─╥=─│ │ ║ AH ║ 36H└ ─╢ DL ║ rиа (0=ий, 1=A, и т.д.)┌ ─╫─╫=─│ о ║ AX ║ 0fH, аAL +ал xый rиа└ ─╢ ║ 3ов на Й, аs` ║ BX ║ вных Йов ║ CX ║ ╟на 3 ║ DX ║ ╡го Йов на ие ╙─╨=─h: ╣щает ме жподсчета общей и вной иовой _. ав AX ╣щено 0fH, значит, вы задали xый и. Иначе, свободная ^в ╟ах = (AX * BX * CX) ╡го _в ╟ах = (AX * CX * DX)См.же: 32H Инф. о ие 1bH ль Пю т  э ц,Щ  vB эFn 37H: ить/d1-Yь┌ ─╥─╥=─│ │ ║ AH ║ 37H НЕТ В ДОКУМЕНТАЦИИ└ ─╢ AL ║ 0 dий Yь ║ ║ 1 ить 1-Yь ║ DL ║ 1-Yь (EAL=1)┌ ─╫─╫=─│ о ║ DL ║ ий 1-Yь э└ ─╨─╨=─h: ет Фопрашивает глобальный Yь э. Yь (SWITCHAR) - 1, Оуемый в Жной #е М>итель опций. е - '/' ({, DIR /w/p), но вы е Хить SWITCHAR на '-' (напр., DIR -w-p), ахоти- те, ваша 0а производила впечатление 0ы UNIX. ОбщеEнято опрашивать Це SWITCHAR Zразбором pи неатированных \ов в ╒жвыделения опций Жы.Предупр: Эта wная Жа Хиться в будущих ╝ях э. Рекомендуется НЕ Хять SWITCHAR, поскольку многие програм- мы не опрашивают его Це Eразборе Жной #и.См.же: ї.SYS.  э  7Ю ▓7 v$ЮЮ ф+Ю 3 vB3 4эFn 38H: ль/ить Пю о $е┌ ─╥─╥=─│ │ ║ AH ║ 38H└ ─╢ DX ║ 0fH ить З$ы равным AL (ФBX) ║ DS:DX ║ ╩локального ┴а жя ┼a мх $ы ║ AL ║ 0 Mить ме жей $ы ║ ║ 1 до 0feH Mить ме жнной $ы < 255 ║ ║ 0ffH Mить ме жЗа $ы Є 255 ║ BX ║ (аAL=0ffH) 16-╞овый З$ы┌ ─╫─╫=─│ о ║ AX ║ Зaи аCF лен│ ║ BX ║ З$ы (аAL=0 E│е)└ ─╨─╨5─h: аDX=0fH, то ий З$ы (см. ниже) ется равным AL (аAL=0ffH, то З$ы ется равным BX). lо З$ы ется в е ї.SYS. аDX < 0fH, то DS:DX ╩ует ┴Lя, в Вый помещается 20-╟овый ┼мх $ы жнной $ы.Ье: ╩▒а CaseMap ~Оовать жeия сопоставля- ющей (сортирующей) Hости 1ов в разных алфавитах.╝и: э2.x не Oет ть З$ы. В м случае \ы ▒а проще: │: AL=0 DS:DX = ╩20-╟ового локального ┴а о: пересылает в DS:DX ┼мх $ы жэ2.x╔═ Зы $#═╗║ Hex Dec $а Keybrd ла ╢ ат валюты DS ║║ ▀ ▀▀▀ ▀ ▀ ▀  ▀ ▀ ▀ ║║ 3dH 061 Австралия DD-MM-YY 13:00:00 $1,000.00 , ║║ 20H 032 Бельгия DD/MM/YY 13:00:00 1 000,00 F ; ║║ 2 002 Французская Канада YY-MM-DD 13:00:00 1 000,00 $ ; ║║ 2dH 045 Дания DD/MM/YY 13.00:00 1.000,00 DKR ; ║║ 166H 358 Финляндия DD-MM-YY 13:00:00 1 000,00 MK ; ║║ 21H 033 Франция keybFR DD/MM/YY 13:00:00 1 000,00 F ; ║║ 31H 049 Германия keybGR DD.MM.YY 13.00.00 DM1.000,00 ; ║║ 27H 039 Италия keybIT DD/MM/YY 13:00:00 1.000,Lit. ; ║║ 3ccH 972 Израиль DD/MM/YY 13:00:00 Щ 1,000.00 , ║║ 311H 785 Средний Восток DD/MM/YY 01:00:00 PM 1.000,000 $ ; ║║ 1fH 031 Нидерланды DD-MM-YY 13:00:00 Я1.000,00 ; ║║ 2fH 047 Норвегия DD/MM/YY 13.00.00 KR 1.000,00 ; ║║ 15fH 351 Jугалия DD/MM/YY 13:00:00 1.000$00 ; ║║ 22H 034 Испания keybSP DD/MM/YY 13:00:00 1.000,00 Ю ; ║║ 2eH 046 Швеция YY-MM-DD 13.00.00 SEK 1.000,00 ; ║║ 29H 041 Швейцария DD.MM.YY 13.00.00 Fr 1,000.00 , ║║ 2cH 044 Великобритания keybUK DD-MM-YY 13:00:00 Ь1,000.00 , ║║ 1 001 Соединенные Штаты MM-DD-YY 01:00:00 PM $1,000.00 , ║╚N═╝См.же: ї.SYS.  э !╬ ▓ bB эFn 39H: *ть новое kе -- MKDIR┌ ─╥─╥=─│ │ ║ AH ║ 39H└ ─╢ DS:DX ║ ╩#и ■Z с именем kя┌ ─╫─╫=─│ о ║ AX ║ Зaи аCF лен└ ─╨─╨=─h: DS:DX ет на #у ■Z в ате: "d:\путь\Уоглавл",0 аии/ФГой путь опущены, то Eнимаются по ю. Подkе *ется и связывается с !ующим деревом. аCF лен E╣те, то AX +ит Зaи, и kе не *ется.См.же:  овой 0ы  э !╬ ▓ bB эFn 3aH: Удалить kе -- RMDIR┌ ─╥─╥=─│ │ ║ AH ║ 3aH└ ─╢ DS:DX ║ ╩#и ■Z с именем kя┌ ─╫─╫=─│ о ║ AX ║ Зaи аCF лен└ ─╨─╨=─h: DS:DX ет на #у ■Z в ате: "d:\путь\Уоглавл",0. аии/ФГой путь опущены, то Eнимаются по ю. Подkе удаляется из "ы kя. аCF лен E╣те, то AX +ит Зaи, и kе не удаляется.Ье: kе не ено +ать ов и подkй и не ено └связано возможными ограничениями э({, не ено └заковано в ╔ных Жах JOIN ФSUBST).См.же:  овой 0ы  э !╬ ▓ bB эFn 3bH: ить ое kе э-- CHDIR┌ ─╥─╥=─│ │ ║ AH ║ 3bH└ ─╢ DS:DX ║ ╩#и ■Z с именем kя┌ ─╫─╫=─│ о ║ AX ║ Зaи аCF лен└ ─╨─╨=─h: DS:DX ет на #у ■Z в ате: "d:\путь\Уоглавл",0. аии/ФГой путь опущены, то Eнимаются по ю. нное подkе жнного иа становится им (ым) kем эжго (Фего) иа. аCF лен E╣те, то AX +ит Зaи, и ее kе жвыбранного иа не Хяется.См.же:  овой 0ы  э  !╬ Ь ▓┤ y Ь6E  v!W `' aB эFn 3cH: *ть  gь┌ ─╥─╥=─│ │ ║ AH ║ 3cH└ ─╢ DS:DX ║ ╩#и ■Z с именем а ║ CX ║ ╚а┌ ─╫─╫=─│ о ║ AX ║ Зaи аCF лен└ ─╢ ║ gь а аaи s ╙─╨=─h: DS:DX ет на #у ■Z в ате: "d:\путь\Уа",0. аии/Фпуть опущены, они Eнимаются по ю.  *ется в нном (Фом) kи  bвается в 8е ва е/Ыь  вы ены созранить gь (▌) жIдующих iй  ауже !ует:  Ebтии усекается до нулевой зы  а╚а - е, bтие отвергается (╚~Хить  ей 43H Хить ╚)  ї.SYS специфицирует вных gей в 0е  Оуйте  ю 5bH *ть Новый , авы не хотите перекрывать (усекать) !ующий .См.же: ▌-cй в/в с-iи  э  !╬y ▓┤3 >* y>D  v `' aB эFn 3dH: bть gь а┌ ─╥─╥=─│ │ ║ AH ║ 3dH└ ─╢ DS:DX ║ ╩#и ■Z с именем а ║ AL ║ 8bтия┌ ─╫─╫=─│ о ║ AX ║ Зaи аCF лен└ ─╢ ║ gь а аsaи ╙─╨=─h: DS:DX ет на #у ■Z в ате: "d:\путь\Уа",0. аии/Фпуть опущены, они Eнимаются по ю.  еен !овать. См.  ю 3cH (*ть ).  bвается в выбранном 8е ва / 8е bтия ж,ости с э2.x и избежания сетевых 8ов, задавайте: AL = 0 bть жя AL = 1 bть жЫи AL = 2 bть жя и Ыи  тель я/Ыи ется в 0. См. 42H (LSEEK)  вы ены (ить gь (▌) жIдующих iй  >ение ов ено └╔изировано (Жа эSHARE), азапрашивается bтие в одном из 8ов >ения.  ї.SYS специфицирует вных gей ов.См.же: ▌-cй в/в с-iи  э ┤ ▓ `' aB эFn 3eH: Закрыть gь а┌ ─╥─╥=─│ │ ║ AH ║ 3eH└ ─╢ BX ║ gь а┌ ─╫─╫=─│ о ║ AX ║ Зaи аCF лен└ ─╨─╨=─h: BX +ит gь а (▌), ╣щенный Ebтии. , представленный этим gем, закрывается, его ┴а сбрасываются, и kе обновляется корректными <ом, ╖ем и лой. Из-за нехватки gей ов (максимум 20, по ю 8), вам понадо╞ься закрыть часть ых gей, М, {, gь 3 (&ый AUX).См.же: ▌-cй в/в с-iи  э ┤ ▓!D!"w (`'( aB( )эFn 3fH:  gь┌ ─╥─╥=─│ │ ║ AH ║ 3fH└ ─╢ BX ║ gь а ║ DS:DX ║ ╩┴а жя мх ║ CX ║ считываемых ╟┌ ─╫─╫=─│ о ║ AX ║ Зaи аCF лен└ ─╢ AX ║ кительно прочитанных ╟ ╙─╨=─h: CX ╟мх считываются из а Фа с gем, нным в BX. ме читаются с ей Nи теля я/Ыи а и помещаются в ┴░ющей Aы, ╩уемый  DS:DX. Оуйте  ю 42H LSEEK, ить тель а, аuо (OPEN сбрасывает тель в 0). Модифицирует тель я/Ыи а, подготавливая его к Iдующим iям я ФЫи. Вы ены ┤сравнивать ╣щаемое Це AX (прочи- танных ╟) с CX (Ъшенное ╟):  аAX = CX, (и CF сброшен) - е было корректным без `  аAX = 0, достигнут Еа (EOF)  аAX < CX (но ненулевой): Eи с а - │ная #а имеет зу AX ╟ Eи из а - в ?е я достигнут EOFЬя: Эта  я превосходит сложные и неудобные с- . Она эффективно сочетает @ый и Hый в, Oя Lю пять свое собственное ─ание. Удобно Оовать эту  ю жя &ых gей, их Мgи &ого в/в, взамен многочисленных ┴и- зующих и по1ьных с- й ┐а. Ивы читаете с а, AX ╣щает зу считанной #и с учетом Яающего ╣та каретки CR (■0dH).См.же: ▌-cй в/в с-iи  э ┤ ▓!Dw "`'" aB" #эFn 40H: Sв  gь┌ ─╥─╥=─│ │ ║ AH ║ 40H└ ─╢ BX ║ gь а ║ DS:DX ║ ╩┴а, +ащего Ыываемые ме ║ CX ║ Ыываемых ╟┌ ─╫─╫=─│ о ║ AX ║ Зaи аCF лен└ ─╢ AL ║ реально считанных ╟═ лучший тест ж` ╙─╨=─h: CX ╟мх Ыывается в Фна о с gем, замм в BX. ме берутся из ┴а, ╩уемого  DS:DX. ме Ыываются, yя с ей Nи теля я/Ыи а. Оуйте  ю 42H LSEEK, ить тель а, аuо (OPEN сбрасывает тель в 0). Обновляет тель я/Ыи а, подготовиться к Iдующим iям Hого я ФЫи. Вы ены ┤сравнивать ╣щаемое Це AX (запи- санных ╟) с CX (Ъшенное ╟жЫи).  аAX = CX, Ыь была успешной  аAX < CX, встретилась aа (скорее ╡го, Uе)Ье: Эта  я превосходит сложные и неудобные с- . Она эффективно сочетает @ый и Hый в, Oя Lю о!лять собственное ─ание. Удобно Оовать эту  ю ж▓а на ые ой- ства, ие М&ый ▓, взамен Оования =х  й ▓а а.См.же: ▌-cй в/в с-iи  э !╬ ▓ Ь6E bB эFn 41H: Удалить ┌ ─╥─╥=─│ │ ║ AH ║ 41H└ ─╢ DS:DX ║ ╩#и ■Z с именем а┌ ─╫─╫=─│ о ║ AX ║ Зaи аCF лен└ ─╨─╨=─h: DS:DX ет на #у ■Z в ате: "d:\путь\Уа",0. аии/Фпуть опущены, они Eнимаются по ю. Уа не +ать обобщенные 1ы ('?' и '*'). удаляется из заданного kя заданного иа. аимеет ╚е, то Zудалением необхо- димо Хить т ╚  ю 43H CHMOD.См.же:  овой 0ы  э ┤ ▓ `' aB эFn 42H: ить тель а -- LSEEK┌ ─╥─╥=─│ │ ║ AH ║ 42H└ ─╢ BX ║ gь а ║ CX:DX ║ на сколько Zвинуть тель: (CX * 65536) + DX ║ AL ║ 0 переместить к zлу а + CX:DX ║ ║ 1 переместить к ей Nи + CX:DX ║ ║ 2 переместить к концу а + CX:DX┌ ─╫─╫=─│ о ║ AX ║ Зaи аCF лен└ ─╢ DX:AX ║ новая Nя теля а (аsaи) ╙─╨=─h: Wает Аий тель я/Ыи к нужному ╩у. Очередная iя я ФЫи начsся с го ╩а.Замечение: ▒с AL=2, CX=0, DX=0 ╣щает зу а в DX:AX. DX здесь старшее зzщее слово: кительная за (DX * 65536) + AX.См.же: ▌-cй в/в сFile I/O  э !╬8 Ь ▓ b) ЬB эFn 43H: ить/d╚а -- CHMOD┌ ─╥─╥=─│ │ ║ AH ║ 43H└ ─╢ DS:DX ║ ╩#и ■Z с именем а ║ AL ║ ЗPи: 0 = извлечь ий ╚а ║ ║ 1 = ить ╚а ║ CX ║ новый ╚а (жPи 01H)┌ ─╫─╫=─│ о ║ AX ║ Зaи аCF лен└ ─╢ CX ║ ий ╚а (жPи 00H) ╙─╨=─h: DS:DX ет на #у ■Z в ате: "d:\путь\Уа",0. аии/Фпуть опущены, они Eнимаются по ю. ╚а извлекается Фется, согласно Зу в AL.Ье: спрятать kе, Оуйте CX=02H (а не 12H, Мвы, воз~, ожидали).P─См.же:  овой 0ы ╚а  э "DфK фK ф ▓┤а ┤!а(┤) ▓0 ▓5┤A:ф> ▓?AфCзHфL┤MзKQф4RjT ▓C[ф!fб!gв!hгj ▓5oфq ▓;{ф~ ▓ ЖаЖpBЖ ЗэFn 44H: е ом в/в -- ┘┌ ─╥─╥=─│ │ ║ AH ║ 43H└ ─╢ AL ║ ЗPи: ║ ║ 00H=ль Пю -ва 08H=Ъс съемн qя ║ ║ 01H=уст. Пю -ва 09H=Ъс лок/удал -ва ║ ║ 02H=с симв. -ва 0aH=Ъс лок/удал gя ║ ║ 03H=Sна симв. -во 0bH=счет повторов >ения ║ ║ 04H=с блочного . 0cH (Шо) ║ ║ 05H=Sна блочное . 0dH=общий ┘ э3.2+ ║ ║ 06H=ль %┐а 0eH=ль логич -во 3.2+ ║ ║ 07H=ль %▓а 0fH=уст логич -во 3.2+ ║ прочие║ (в зависимости от Pи)┌ ─╫─╫=─│ о ║ AX ║ Зaи аCF лен└ ─╢ ║ Финое Це (в зависимости от Pи) ╙─╨=─h: ┘Gляет метод взаимокия с ами и Mения Пи о ах. │ные \ы и оные Ця варьиру- ются в зависимости от За Pи в 9е AL.╝и: Pи 0-7  . э2.1+ Pи 8,0bH  . э3.0+ Pи 9,0aH  . э3.1+ Pи 0dH,0eH,0fH . э3.2+ ■ C■Q. 00H: Ъсить и Пи об е │: BX= gь а (о Фиовый ) о: DX= ┘Инф об  ■ C■Q. 01H: ить и Пи об е │: BX= gь а (о Фиовый ) DX= ┘Инф об  (DH еен └нулевым) о: DX= ┘Инф об  ■ C■Q. 02-03: (AL=02H) ФS(AL=03H) #у ┘на СИМВОЛЬНОЕ  │: DS:DX=> ╩┴а (е) Фмх (Ыь) CX= Zаваемых ╟ BX= gь а (о -- не !) о: AX= Зaи аCF лен ■ C■Q. 04-05: (AL=04H) ФS(AL=05H) #у ┘на БЛОЧНОЕ  │: DS:DX=> ╩┴а (е) Фмх (Ыь) CX= Zаваемых ╟ BL= ID иа (0=ий, 1=A, и т.д.) о: AX= Зaи аCF лен AX=кительное Zанных ╟(аCF=NC=0) ■ C■Q. 06-07: ль %┐а (AL=06H) Ф%▓а (AL=07H) │: BX= gь а (о Фиовый ) о: AL= 0ffH=не Еа; 0=EOF (жиовых gей) AL= 0ffH=готово; 0=не готово (ж) ■ C■Q. 08H: Оует ли блочное о съемный qь? э3.0+ │: BL= ID иа (0=ий, 1=A, и т.д.) о: AX= 00H=съемный qь (т.е. флоппи-и) 01H=не съемный (ый иФRAM-и) 0fH Зaи аBL +ит xый и ■ C■Q. 09H: Является ли о съемным в сети? э3.1+ │: BL= ID иа (0=ий, 1=A, и т.д.) о: DX= ╚а жиа. а╞12=1 (т.е., DX & 1000H = 1000H), то о съемное. ■ C■Q. 0aH: Eнадлежит ли gь а локальному Фудаленному у в сети? э3.1+ Нам посоветовали не Оовать эту Pю. Вместо го трактуйте удаленные а Млокальные. │: BX= gь а (о -- не ) о: DX= ╚а жиа. а╞15=1 (т.е., DX & 8000H = 8000H), то о удаленное. ■ C■Q. 0bH: Дь повтора/задержки E>ении и ─ке ов. 3.0+ │: DX= попыток Z▒ом ┌24H "Критическая aа" CX= счетчик цикла между попытками о: AX= Зaи аCF лен Ье: е - 3 попытки и счетчик цикла 1. ■ C■Q. 0dH: Общий ▒┘отрабатывает разнообразные  я. yя с э3.2, ~*вать бы , работающие на уровне гек (атирование, е/Ыь). э3.2+ Зкия в 9е CL fяет "подPю": │: CL= Зкия 40H = ить \ы а 60H = ль \ы а 41H = Sгку Аого а 61H = гку Аого а 42H = атировать гку с ╜ей 62H = Верифицировать гку Аого а DS:DX=> ╩пакета мх ┘ См.: Общий ┘40H/60H! Общий ┘41H/61H! Общий ┘42H/62H по поводу "ы пакетов мх ┘. о: AX= Зaи аCF лен DS:DX=> пакет мх +ать Пю ╣та. ■ C■Q. 0eH: Выяснить, назначил ли ба tАих уст- ройств одному физическому у. э3.2+ │: BL= ID иа (0=ий, 1=A, и т.д.) о: AX= Зaи аCF лен AL = 0 аровно одна буква иа назначена у BL AL = (1=A, 2=B и т.д.) аназначено tАих , AL +ит ID его назначенного иа ■ C■Q. 0fH: Сообщить бу блочного а ID а жmки. Ис физическим ом ассоциируется tАих, эвыдает сообщение "Insert чрхX:...". Эта  я Oет вам сообщать э, ис нным ID уже лен, тем самым обходя сообщение. э3.2+ │: BL= ID иа (0=ий, 1=A, и т.д.) о: AX= Зaи аCF лен AL = 0 аровно один ID назначен у BL AL = (1=A, 2=B и т.д.) ID выбранного а, Вое ┬Ооваться в Iдующих iях в/в. Ье: Эта  я ена ░ться Zлюбой iей в/в на Аом е. Иначе эвыль сообщение.P─См.же: ┘Инф об  бы   э !┤ ▓@ D3y `'wB эFn 45H: Дублировать gь а -- DUP┌ ─╥─╥=─│ │ ║ AH ║ 45H└ ─╢ BX ║ !ующий gь а┌ ─╫─╫=─│ о ║ AX ║ новый gь а, дублирующий оригинал└ ─╢ ║ Зaи аCF лен ╙─╨=─h: *ет дый gь а, ссылающийся на тот же поток в/в, и !ующий gь. Любое продвижение теля я/Ыи жодного gя кует на его дубликат -- ║ая любые iи я, за- писи ФWения теля посредством  42H LSEEK. Новый gь наследует ограничения 8а bтия оригинала. Эта  я Оуется с одной главной целью: вы е закрыть gь, заставляя эЫать овые ┴а. ой способ DUP/CLOSE - быстрее, чем закрытие и повторное bтие а.См.же: ▌-cй в/в &ый в/в  э  ┤ ▓-w:?,@#_6B $`($wB$ %эFn 46H: Vить gь -- FORCDUP┌ ─╥─╥=─│ │ ║ AH ║ 46H└ ─╢ BX ║ целевой gь а (еен уже !овать) ║ CX ║ исходный gь а (еен уже !овать)┌ ─╫─╫=─│ о ║ AX ║ Зaи аCF лен└ ─╨─╨=─h: Заставляет gь а (▌) ссылаться на другой Ф о. gь в CX (источник) закрывается, аон bт, а Чстановится дубликатом gя в BX (наЦя). Иными словами, gи в CX и BX будут ссылаться на один и тот же физический Фо. Оуется жVения &ого в/в. Eмер:  Откроем "C:\STDOUT.TXT"   ю 3dH Open File и полу- чим gь ({, 05).  им BX=05, CX=01 и ▒ем эту  ю. (Ье: описа- тель 01 - предeный gь "&ого оного а").  Теперь ~вызвать  ю 3eH Close File и закрыть ▌05. ~обращаться к у STDOUT.TXT  gь 01.  Стало └, иовый "C:\STDOUT.TXT" ┬отныне Mать весь ▓, *ваемый ╡ми ?ами (им и порожденными)  любую  ю 1ьного в/в э, же Ми любой ▓ в gь а 01   ю э40H.  Ивы оите в Ў.COM, предeные gи уста- навливаются на lые а ({, gь 01 уста- навливается на "CON").См.же: ▌-cй в/в &ый в/в  э  ▓I╬ bB эFn 47H: ль ое kе э┌ ─╥─╥=─│ │ ║ AH ║ 47H└ ─╢ DS:SI ║ ╩локального ┴а ж5ирующего пути (64 ╟а) ║ DL ║ rиа (0=ий, 1=A, и т.д.)┌ ─╫─╫=─│ о ║ AX ║ Зaа аCF лен└ ─╨─╨=─h: В Lьский ┴по ╩у DS:SI помещается в е ■Z путь его ого kя жиа, нного в DL. Путь ╣щается в ате: "путь\kе",0. Не подставляется вZи буква иа, а сзади не подставляется 1"\". {, аим является Гое kе, эта  я верsвам пустую #у (DS:[SI] = 0).См.же:  овой 0ы  э  ▓=M d(ЭB эFn 48H: ;ить ^(ль <_)┌ ─╥─╥=─│ │ ║ AH ║ 48H└ ─╢ BX ║ Ъшенное количество _в 16-╟овых ]ах┌ ─╫─╫=─│ о ║ AX ║ Зaи аCF лен└ ─╢ BX ║ <вной _в ]ах (а_нехватает) ║ AX ║ 4ный ╩;енного ┼а (аs`) ╙─╨=─h: ;яет ┼_зой BX ]ов, ╣щая 4- ный ╩го ┼а в AX (┼yется с AX:0). а;ение неудачно, взводится Carry-, в AX ╣ща- ется Зaи, а BX +ит максимальный <вной ж ;ения _(в ]ах). fить наибольший вный кусок, общеEнято устанав- ливать BX=0fH Z▒ом. ;ение Яится с ошиб- кой, ╣тив <максимального ┼а _в BX.Ье: И?Mает е   ю 4bH EXEC, вся вная ^уже ;ена ему.См.же:  я ^ю ┼я ^ю  э  ▓' J d'ЭB эFn 49H: Освободить ;енный ┼_┌ ─╥─╥=─│ │ ║ AH ║ 49H└ ─╢ ES ║ 4ный ╩(]) освобождаемого ┼а _┌ ─╫─╫=─│ о ║ AX ║ Зaи аCF лен└ ─╨─╨=─h: Освобождает ┼_, yющийся с ╩а ES:0. т ┼становится вным ждругих Ъсов 0ы. Вообще говоря, вы ены освобожль лишь те ┼и _, Вые вы MФ  ю 48H ;ить ^. Родитель отвеча- ет за освобождение _порожденных ?ов. Тем не менее, нине препятствует вам освобожль ^чужих проыессов.См.же:  я ^ю ┼я ^ю  э   ▓: M+ Щ3"lGЩ d'ЭB эFn 4aH: Сжать Ф:ить ┼_┌ ─╥─╥=─│ │ ║ AH ║ 4aH└ ─╢ ES ║ 4;енного ┼а _ ║ BX ║ желаемый <┼а в 16-╟овых ]ах┌ ─╫─╫=─│ о ║ AX ║ Зaи аCF лен└ ─╢ BX ║ наибольший вный ┼(а:ение неудачно) ╙─╨=─h: Хяет <!ующего ┼а _. ИAа Mает е,  я 4bH EXEC уже распре- делила ┼_, yя с ╒, Вый +ит всю вную ^. освободить ^жЩа порождаемых ?ов, ┼_, yющийся с ╒, uо сzла сжать.Ье:  я 31H (KEEP) и ┌27H (TSR) сжимают ┼по ╩у ╒.См.же:  я ^ю ┼я ^ю  э !╬д ▓@дL!L3Щ#╬д< 0" # O3#O&┤<&w 'y?(X0*hC*i+j/╬ 0д1 е5ф<7 ╡.C ╡ Fc*FxBF GэFn 4bH: пить ФЭзить Aу -- EXEC┌ ─╥─╥=─│ │ ║ AH ║ 4bH└ ─╢ DS:DX ║ ╩#и ■Z с именем а, +ащего Aу ║ ES:BX ║ ╩EPB (EXEC Parameter Block - ┼а \ов EXEC) ║ AL ║ 0 = Эзить и пить ║ AL ║ 3 = Эзить Aный оверлей┌ ─╫─╫=─│ о ║ AX ║ Зaи аCF лен└ ─╨─╨=─h: Gляет средства одной Aе (родителю) вызвать другую Aу (ребенка), Вая по Яению ╣тит е родителю. DS:DX ет на #у ■Z в е: "d:\путь\Уа",0. аиФпуть опущены, они подразумеваются по ю. ES:BX ет на ┼_, подготовленный МEPB, ат Вого зависит от Ъшенной Pи в AL.AL=0 EXEC: Мродительская Aа [оzльно Mает всю вную ^в свое распоряжение, вы ены освободить часть _   ю 4aH до ▒а EXEC (AL=0). lая Hость: 1. ▒ите  ю 4aH с ES=4у ╒и BX=минимальному объему _, требуемой вашей Aе (в ]ах). 2. Подготовьте #у ■Z с именем ░емого Aного фай- ла и ите DS:DX на [ый 1й #и. 3. Подготовьте ┼\ов EXEC со ╡ми uыми полями. 4. (ите ие Ця SS, SP, DS, ES и ьв Xых, ╩уемых  9CS (CS - единственная точка ж ссылок Iтого, МEXEC верsе от ребенка). 5. Выдайте ▒EXEC с AL=0. 6. Восстановите локальные Ця SS и SP. 7. Bьте CF, узнать, не было ли aи EEXEC. 8. Восстановите DS, ES и локальную ь, аuо. 9. Bьте Зоа   ю 4dH WAIT (анадо). ╡bтые ы дублируются, ребенок nть ме М gи ов, и  &ый в/в. 8ы ва gей дублируются, но любые ╔ные ─ки ов не будут относиться к ребенку. См.  ю 5cH. I╣та из ребенка, ╛ы ┌22H Terminate, ┌23H Ё- °и ┌24H Critical Error ╕ются в их предыдущие Ця.AL=3 LOAD: Эта Pя Оуется жЭзки "оверлея". DS:DX ет на ■Z Уа, а ES:BX ет на "LOAD"-╝ю ┼а \ов EXEC. Главное Це й Pи в том,  она считывает Юок EXE и пяет uые Wения 4ов, Мтребуется жA.EXE.Ья: Эта  я Оует Aу-Эзчик из Ў.COM, Вый транзитен в э2.x (и, воз~, уже перекрыт Aой). В м случае возникsaа, аэне найдет Ў.COM. Вы ены обеспечить корректную #у COMSPEC= в jи Z ▒ом й  . Вместо разбора собственных с(Мтребуется жEPB), вы е найти удобным Эзить и пить вторичную копию а Ў.COM, Оуя опцию /C. {, пить Aу FORMAT.COM, ите DS:DX на ╩#и ■Z: "\Є.com",0 и ите EPB+2 на 4и -ение .ей #и Ж: 0eH,"/c рmat a:/s/4",0dH ой вторичный Ратор ЖОует очень мало _ (около 4K). Вы е поискать в jи э#у COMSPEC=, ить точное местоположение а Ў.COM.См.же:  я ?ами Щи Яение  э  OFO: Щ c*xB эFn 4cH: Яить Aу -- EXIT┌ ─╥─╥=─│ │ ║ AH ║ 4cH└ ─╢ AL ║ Зоа┌ ─╫─╫=─│ о ║ s ║ (неEменим)└ ─╨─╨=─h: ╣щает е от порожденного ?а его родителю, я Зоа, Вый ~d ей 4dH WAIT. е Zается по ╩у Яения в ╒Яающейся Aы. ╛ы Ё-°и Critical Error ╕ются к старым ╩ам, (еннмы в родительском ╒.Ье: Це ERRORLEVEL (Оуемое в пакетных ах э) ~ Оовать жBки За оа самой Iдней Aы.См.же:  я ?ами Щи Яение  э 6iGj13 c*xB эFn 4dH: ль Зоа Aы -- WAIT┌ ─╥─╥=─│ │ ║ AH ║ 4dH├ ─╫─╫=─│ о ║ AL ║ Зоа Iднего Яившегося ?а└ ─╢ AH ║ 0 = нормальное Яение ║ ║ 1 = Яение  Ё-° ┌23H ║ ║ 2 = Яение по критической aе а ┌24H ║ ║ 3 = Яение   ю 31H KEEP ╙─╨=─h: ╣щает Зоа Iднего из Яившихся ?ов. Эта  я ╣щает правильную Пю однажды жНого Яившегося ?а.См.же:  я ?ами Щи Яение  э !╬ Ь ▓  CQ  ЬE│D│.╬ # Ь#% Ь ) 2*Щ 2Q 5bB5 6эFn 4eH: Найти 1-й совпадающий ┌ ─╥─╥=─│ │ ║ AH ║ 4fH└ ─╢ DS:DX ║ ╩#и ■Z с именем а (допускаются ? и *) ║ CX ║ ╚а жсравнения┌ ─╫─╫=─│ о ║ AX ║ Зaи аCF лен└ ─╢ ь ║ заполнена мми (ане было aи) ╙─╨=─h: DS:DX ет на #у ■Z в е: "d:\путь\Уа",0. аии/Фпуть опущены, они подразумеваются по ю. Обобщенные 1ы * и ? допускаются в имени а и :ении. энаходит У[ого а в kи, Вое совпадает с за- мм именем и ╚ом, и помещает найденное Уи другую инфор- мацию в ь, Мпоказано ниже:ь-. Длн +имое в ь▀ ▀ D▀ ┌─ ─ ─ ─ ─┐ +0 15H │ 7ируется │ Оуется в Iдующих ▒ах 4fH Find Next ├───┼ ─ ┴ ─ ┴───┘+15H 1 │атр│ ╚а жнайденного а ├───┴───┐+16H 2 │ ╢│ ╢*ния/модификации в ате filetime ├───┴───┤+18H 2 │ ла │ ла *ния/модификации в ате filetime ├───┴───┼─┐+1aH 4 │ младш старш │ <а в ╟ах в ате DWORD ├───┴───┴───┴───┴───┐+1eH 0dH │ │ 13-╟овое ■Z У: "filename.ext",0 └───┴ ─ ┴ ─ ┴───┴───┘ (не дополнено пробелами; напр., DOIT.BATщ_) 2cH требуемый <┴аP▀Ья: ╚а lо Оуется во "║ающем" поиске. авас интересуют Мы, и kя, ите ╞╚а 4 (т.е. attr | 10H). См. ╚а жполной Пи.Типичная Hость, Оуемая жпоиска ╡х подходящих ов:  Оуйте ▒1aH, ить ьна локальный ┴ (ФОуйте ую ьв ╒по -ению 80H)  уст. CX=╚, DS:DX => ■Z и, путь, обобщенное У  ▒ите  ю 4eH (Найти 1-й)  аCF ет aу, вы закончФ(sсовпадений)  уст. DS:DX => ь(Фна ме, Вые вы скопировали из ь I▒а  4eH)  повторять mать Уа и ме по ╩у DS:DX вызвать  ю 4fH (Найти .ий) пока Carry-не покажет, совпадений больше sСм.же:  овой 0ы  э  :P ▓   P*  2 P- ЬFP bB эFn 4fH: Найти .ий совпадающий ┌ ─╥─╥=─│ │ ║ AH ║ 4fH└ ─╢ DS:DX ║ ╩мх, ╣щенных предыдущей 4eH Найти 1-й ┌ ─╫─╫=─│ о ║ AX ║ Зaи аCF лен└ ─╢ ь ║ заполнена мми ╙─╨=─h: DS:DX ет на 2bH-╟овый ┴с Пей, ╣щенной  ей 4eH Найти 1-й (либо ь, либо ┴, скопированный из ь). Оуйте эту  ю I▒а 4eH. .ее Уа, сов- падающее по обобщенному имени и ╚у а, копируется в ┴ по ╩у DS:DX вместе с другой Пей (см.  ю 4eH о "е овой Пи в ┴е, заполняемом э).См.же:  овой 0ы  э  0 ^B эFn 54H: ль Yь ╜и э┌ ─╥─╥=─│ │ ║ AH ║ 54H├ ─╫─╫=─│ о ║ AL ║ 0 а╜я выключена (OFF)└ ─╢ ║ 1 а╜я ║ена (ON) ╙─╨=─h: ╣щает ий %╜и Ыи э. ав AL ╣щается 1, то эсчитывает обратно Ный 3, Ыываемый на и, Bить правильность Ыи.  я э2eH Oет ить/Хить 8╜и.См.же:  0ной Пи  э "╬ ▓ bB эFn 56H: Переименовать/переместить ┌ ─╥─╥=─│ │ ║ AH ║ 56H└ ─╢ DS:DX ║ ╩старого ■Z имени (путь/У!ующего а) ║ ES:DI ║ ╩нового ■Z имени (новые путь/У)┌ ─╫─╫=─│ о ║ AX ║ Зaи аCF лен└ ─╨─╨=─h: DS:DX и ES:DI ют на #и ■Z: "d:\путь\Уа",0. Старое УDS:DX ено отвечать !ующему у и не со- держать обобщенных 1ов. ии путь необязательны (аопуще- ны, они Eнимаются по ю). Новое УES:DI ено описывать НЕ !ующий . ан и, он еен └тем же, и в старом имени. аиФ путь опущены, Eнимаются ие я. астарое и новое У+ат разные пути (явно ФEнятые по ю), то kя жа ПЕРЕМЕЩАЕТСЯ в оглавле- ние, нное в новом имени.Ье: аID иа в старом имени отличается от его иа э, не забывайте ть ой же ID иа в новом имени.См.же:  овой 0ы  э ┤@│ ▓@ >H ? bB эFn 57H: ить/dлу/╢а┌ ─╥─╥=─│ │ ║ AH ║ 57H└ ─╢ AL ║ 0 Mить лу/╢а ║ ║ 1 ить лу/╢а ║ BX ║ gь а (▌) ║ CX ║ (аAL=1) новая отметка ╖и в ате ╢/ла а ║ DX ║ (аAL=1) новая отметка лы в ате ╢/ла а┌ ─╫─╫=─│ о ║ AX ║ Зaи аCF лен└ ─╢ CX ║ отметка ╖и а в ате ╢/ла а ║ DX ║ отметка лы а в ате ╢/ла а ╙─╨=─h: BX еен +ать gь bтого а (см. 3cH Ф3dH ). Укажите Pю, 0 Ф1, в 9е AL. DX и CX задаются в ате _; {, младшие 8 ╞лы находятся в DH.См.же:  овой 0ы  э  ф  ▓0 ф2 j% g▓ ^)▓B эFn 59H: ль :енную Пю об aе┌ ─╥─╥=─│ │ ║ AH ║ 59H э3.0+└ ─╢ BX ║ 0H (r╝и: 0H жэ3.0, 3.1 и 3.2)┌ ─╫─╫=─│ о ║ AX ║ :енный Зaи (0, ане было aи)└ ─╢ BH ║ класс aи ║ BL ║ предлагаемое кие ║ CH ║ сфера (где произошла aа) ╙─╨=─h: Оуйте эту  ю, уточнить, предEнять I сбоя  эпо aе (э3.0+ ). ░йте ее:  в mчике критических `┌24H  Iлюбой  ┌21H , ╣тившей Carry-  I▒а с- , ╣тившей AL=0ffH См. Зы `э на предмет полного списка Зов `, их классов, предлагаемых кий и сфер возникновения, Вые могут └╣щены й  ей.╝и: Эта  я отсутствует в ╝ях до э3.00. В э2.x, И CF ет на aу, Оуйте логику вашей Aы, отреагировать на aу. В э3.0+, И я ╣щает CF=1, рекомендуем вам игнорировать Зaи, ╣щенный в AX, вызвать эту  ю и пить кие, предложенное в BL.См.же:  0ной Пи Зы `э  э  ф!╬ Ь ▓┤5C! ф "`B" #эFn 5aH: *ть уникальный ╖ный ┌ ─╥─╥=─│ │ ║ AH ║ 5aH э3.0+└ ─╢ DS:DX ║ ╩#и ■Z с иом и путем (заканчивается \) ║ CX ║ ╚а┌ ─╫─╫=─│ о ║ AX ║ Зaи аCF лен└ ─╢ ║ gь а (аsaи) ║ DS:DX ║ (не Хяется) становится полным ■Z-именем нового а ╙─╨=─h: bвает (*ет) с уникальным именем в kи, н- ном #ой ■Z, на Вую ет DS:DX. Ў.COM исполь- зует эту  ю, И*ет ╖ные "канальные" ы, Оуемые EVении ┐а-▓а. hпути ено └готово к Eсоединению в его Еимени а. Вы ены обеспечить минимум 12 ╟в конце #и. Сама #а ена └заполнена в одной из : "d:\путь\",0 (ны ии путь) ИЛИ "d:",0 (ое kе иа) ИЛИ "d:\",0 (Гое kе иа) ИЛИ "",0 (ые ии kе) I╣та #а DS:DX ┬дополнена именем а.Ья: э*ет Уа из шестнадцатеричных цифр, Mаемых из те- кущих лы и ╖и. аУа уже !ует, эпроеа- ет *вать новые имена, пока не Mит уникальное У. *ваемые им способом ы - по !у НЕ ВРЕМЕННЫЕ, и их следует удалять посредством  э41H , Иони не нужны.╝и: вна, yя с э3.0См.же: ▌-cй в/в  э  ф!╬ Ь ▓┤. >>y `B эFn 5bH: *ть новый ┌ ─╥─╥=─│ │ ║ AH ║ 5bH э3.0+└ ─╢ DS:DX ║ ╩#и ■Z с именем а ║ CX ║ ╚а┌ ─╫─╫=─│ о ║ AX ║ Зaи аCF лен└ ─╢ ║ gь а а`s ╙─╨=─h: DS:DX ет на #у ■Z в е: "d:\путь\Уа",0. аии/Фпуть опущены, они Eнимаются по ю. т ▒идентичен  э3cH CREATE, с тем исключением, он верsaу, ас замм именем уже !ует. bвается жя/Ыи в ,ом 8е ваСм.же: ▌-cй в/в  э ф┤ ▓" ▓yj*%G2%H,& y%(M ,i*,j!3ф 5b)5?B5 6эFn 5cH: ─ать/раз─ать вк у┌ ─╥─╥=─│ │ s ║ AH ║ 5cH э3.0+└ ─╢ AL ║ Pя: 0 = за─ать pь а ║ ║ 1 = раз─ать ранее захваченную pь ║ BX ║ gь а (▌) ║ CX:DX ║ -ение ((CX * 65536) + DX) от zла а ║ SI:DI ║ за ┼ируемой pи ((SI * 65536) + DI) ╟┌ ─╫─╫=─│ о ║ AX ║ Зaи аCF лен└ ─╨─╨=─h: ┼ирует Фосвобождает вк участку а, идентифицируемого gем в BX. pь а, yющаяся по Аому -е- нию CX:DX и имеющая зу SI:DI, ┼ируется (захватывается) Ф раз┼ируется (освобождается). -ение и за обязательны. >ение ов ДОЛЖНО └╔изировано (Жой SHARE), иначе  я верsЗaи "xый r ." ─ка кует на iи я, Ыи и bтия со сто- роны порожденного Фконкурирующего ?а. Eпопытке ого ва (и 8е ва , eном EOPEN М"8раз- деления", Вый запрещает ой в), эотвергает iю  ▒┌24H (mчик критических `) Iтрех попыток. эEм выдает сообщение "Abort, Retry, Ignore". Рекомендуемое кие - НЕ пытаться и ожиль За aи. Вместо го попытайтесь за─ать pь и куйте в )ии с Зом ╣та. Oет избежать довольно неустойчивого состояния э, связанного с пением ┌24H. ─ка за концом а не является aой. Вы е захва- тить весь , задав CX=0, DX=0, SI=0fH, DI=0fH и AL=0. Eосвобождении, -ение и за участка ены точно совпаль со -ением и зой захваченного участка.Ья: Дублирование gя  45H Ф46H дублирует и ─ки. Даже аво ╢OPEN выбран 8ва Inherit, механизм ─ки не даст ниМих Eвилегий ва порожденным процес- сам, *нным  ей 4bH EXEC (они трактуются Мотдельные). Важно, ╡─ки а были сняты до Яения про- граммы. авы Оуете ─ку, особо отслеживайте ▒ы ┌23H (оЁ-°) и ┌24H (опо критической aе), снять ─ки до кительного Яения Aы. Рекомендуется освобожль ─ки М~скорее. ┤ ┼ируйте, nйте и освобождайте ─ку одной iей.╝и: вна, yя с э3.0См.же:  овой 0ы 3dH (OPEN)  э  ф ▓! ф3╬ ▓ ▓ Z* ▓4,Z /ZB/ 0эFn 5eH: Разные сетевые  ┌ ─╥─╥=─│ │ ║ AH ║ 5eH э3.1+└ ─╢ AL ║ Q.: 0=ль Умашины (узла) в сети ║ ║ 2=ить стартовую #у сетевого Cа ║ ║ 3=извлечь стартовую #у сетевого Cа ║ прочие║ (зависят от Pи)┌ ─╫─╫=─│ о ║ AX ║ Зaи аCF лен└ ─╢ прочие║ (зависят от Pи) ╙─╨=─h: Эти  вны Eленной IBM PC Network Program.╝и: вны, yя с э3.1 ■ C■Q. 00H: Извлекает Умашины (узла), Моно известно в сети. │: DS:DX=> ┴Lя ж■Z сетевого имени о: DS:DX=> ┴, +ащий сетевое У CH= 0=Уне eо; иначе=Уeо CL= rимени NET·(аCH ненулевой) AX= Зaи аCF лен Замеч: Сетевое У- 15-симв. (дополненная пробелами) #а ■Z ■ C■Q. 02H: Задает настроечную #у, посылаемую на CНый раз, И эта машина выдает 5аты на сетевой C. │: DS:SI=> ┴, +ащий настроечную #у (до 64 ╟) CX= за настроечной #и BX= индекс в списке наЦй, отвечающий Cу о: AX= Зaи аCF лен Замеч: См. Fn 5fH Q. 02H о методе eия индекса Cа ■ C■Q. 03H: Извлекает настроечную #у Cа, заданную ранее посредством эFn 5eH Q. 02H. │: DS:DI=> 64-╟овый ┴Lя ж5ата BX= индекс Cа в списке наЦй о: ES:DI=> ┴, заполненный настроечной #ой CX= за настроечной #и AX= Зaи аCF лен Замеч: Поскольку индекс в списке наЦй Хиться в лю- бой момент, Оуйте  ю 5fH Q. 02H, полу- чить индекс непосредственно Z▒ом й  .См.же: 5fH Vение в сети  э  ф ▓!ф)╬ ▓##П) ▓9 ▓ DYBD EэFn 5fH: Vение в сети┌ ─╥─╥=─│ │ ║ AH ║ 5fH э3.1+└ ─╢ AL ║ Q.: 2=Mить списка Vений  ║ ║ 3=Vить сетевое о ║ ║ 4=отменить Vение сетевого а ║ прочие║ (зависят от Pи)┌ ─╫─╫=─│ о ║ AX ║ Зaи аCF лен└ ─╢ прочие║ (зависят от Pи) ╙─╨=─h: Эти  вны Eленной IBM PC Network Program.╝и: вны, yя с э3.1 ■ C■Q. 02H: Извлекает из списка Vений сетевых . │: DS:DI=> 128-╟овое ■Z локальное У. ("LPT1",0) ES:DI=> 128-╟овый ┴с ■Z сетевым именем BX= индекс в списке наЦй о: DS:DI=> ■Z локальное Уа (напр., "LPT1",0) ES:DI=> ■Z сетевое У BL= тип : 3=C; 04='о' BH= %: ╞0=1 -xое .; 0=верное CX= (енный \(ENET·, ┤0) AX= Зaи аCF лен DX,BP (разрушены) Замеч: lо эту  ю ░ют с BX=0, Чповторяют ▒ы, увеличивая Це BX, пока эне верsaу 12H (больше sов). ■ C■Q. 03H: т ▒fяет имена kй жсети и перенаправляет вна сетевые Cы. Замеч: вк Cу Vает- ся на уровне ╙-·┌17H . │: DS:SI=> ■Z Уисходного а ES:DI=> ■Z наЦе (сетевой путь с паролем) BL= тип : 03=C; 04='о' CX= \ж░ющего (задавайте 0 жNET·) о: AX= Зaи аCF лен Замеч: аBL=03, то источник задает ■Z-УCа (наE- мер, "LPT1",0). НаЦе Зируется в е: [\\computername\{shortname|printdevice}],0,[password],0. апароль yется с 00, считается, пароля s. аBL=04, то источник задает ■Z-Уиа ({, "F:",0), а наЦе - ■Z-Упути. I▒а й  , локальные обращения к му иу Vаются на выбранные Укомпьютера и путь. ■ C■Q. 04H: Отменить сетевое Vение жнного а. │: DS:SI=> ■Z-Уа ФID иа о: AX= Зaи аCF лен Замеч: аDS:SI ет на PRN, LPT1, LPT2 ФLPT3, и ой- ство связано с сетью, то сетевое обслуживание го ой- ства прекращается. аDS:SI ет на ID иа и пароль ({, "F:",0,"mypswrd",0), то Vение го иа пре- кращается, и ID иа ╕ет свое предыдущее Це.См.же: 5eH Разные сетевые    э ф%Щ ╡@ Щ! ф Щ) ╡B эFn 62H: ль ╩╒┌ ─╥─╥=─│ │ ║ AH ║ 62H э3.0+├ ─╫─╫=─│ о ║ BX ║ 4ный ╩╒пяющейся Aы└ ─╨─╨=─h: Эта  я ╣щает в BX ╩╒ей Aы. Оуется, Mить ╩\ов Жной #и, ╩jя эи другой полезной Пи в ╒.╝и: вна, yя с э3.0См.же: ╒(Program Segment Prefix) jе э  э  f g  k l m n o h i j {#z9]Fя э ┌20H Яить Aу ┌21H 2э ┌25H/26H Абсолютные е/Ыь иа ┌27H Яиться, но остаться 6ным ┌28H Квант ╖и э(НЕТ В ДОКУМЕНТАЦИИ) ┌2eH пить Жу э(НЕТ В ДОКУМЕНТАЦИИ) ┌2fH Мультиплексное Fе (спулинг печати) ═ ╩ные тели (не Оуются МFя) ═ ┌22H ╩Яения ┌23H ╩ё-° ┌24H ╩mчика критических `P─  · О  ях э  эпо группам  ^_`ab c depz1 A { эпо группам 0ная Пя 1ьный ┐-▓ ▌-cй в/в Традиционные с-iи  овой 0ы е ?ами е ^ю Смешанные   бы P─ О  ях э!  э  · 2%17 ,%[8Щ.%7%OI%U:%FR%9 5% 6 8 ! " 4TPQ 0]B  0ной Пи 30H r╝и э 2fH ╩ей ь 2aH ая 0ная ла 62H ╩его ╒ 2cH ее 0ное ╢ 35H ее Це ╛а Fя 19H ий ый и 4dH Зоа ?а 47H ее kе 59H :енная Пя об aе 38H Пя о $е 44H ┘: %а/а 54H 8╜и иа 37H 1переключения 33H Ё-°%Bки 34H ╩%а реентерабельности э 36H 1bH 1cH <иа и вных ╟ 32H попурри Пи о ие 57H ла/╢*ния/модификации а 4eH 4fH 11H 12H поиск овP─0 Группы  й  э ;A  ;B;B  ; A  ; A  ; B ;BoО Е0]B  1ьного ┐а-▓а 01H ┐с Лы #. 3fH (BX=0) 08H ┐с Лы без эха 07H нефильтрующий ┐с Лы без эха 06H консольный ┐и ▓ 02H выль один 1". 40H (BX=1 ФBX=2) 09H выль #у 1ов . 40H (BX=1 ФBX=2) 0bH ль %┐а (и mать ждущий Ё-°) 0cH очистить ┴Лы и жль ┐а 0aH ┴изованный ┐с Лы (#и)  . 3fH (BX=0) 03H AUX (Hый J) ┐. 3fH (BX=3) 04H AUX (Hый J) ▓. 40H (BX=3) 05H PRN (C) ▓!. 40H (BX=4) ┌2fH Мультиплексные  (спулинг печати)P─ ┌16H ┌10H Группы  й  э "a>W3V?@C D A B FGH a┤0]B ▌-cй ┐-▓Эти  предпочтительнее традиционных овых с-iй , авам не требуется Rивать ,ость с э╝и 1.10. Они проще. 3cH CREATE *ть  5bH *ть новый (не еен !овать) 5aH *ть уникальный  3dH OPEN bть  3eH CLOSE Закрыть  41H DELETE Удалить  42H LSEEK ить тель я/Ыи (~же узнать <а) 3fH READ из а/а 40H WRITE Sв /о 44H ┘(~Оовать жBки на Еа) 45H DUP Дублировать gь а 46H REDIRECT Vить gь аP─ с-iи gь а Группы  й  э '`&+&+  # )$*&Ы `@]Традиционный овый ┐-▓ сЭти  работают на ом (ем) kи э.В ├е случаев предпочтительнее ▌-cе  . 16H *ть  29H разобрать Уа в с-ат 0fH bть  11H 12H искать в ем kи 10H закрыть  13H удалить  14H Hый  15H SHый  21H Ыь а @ого ва 27H tЫей а @ого ва 22H SЫь в @ого ва 28H StЫей в @ого ва (ФХить <) 24H ить ╩@ой Ыи в еP─ ┼я ом (с) ▌-cй в/в Группы  й ;)<)=ISTD%*'D E X P Q+0]B  овой 0ы 39H MKDIR: *ть kе 0eH ить ий и 3aH RMDIR: удалить kе 19H dий и 3bH CHDIR: ить ое kе 47H Mить ое kе 56H 17H RENAME Переименовать  57H TIME/DATE ить/dлу/╢а 42H 23H SIZE Ъсить <а 28H Заль <а ( я 42H увеличить <а) 43H CHMOD: Хить/dАТРИБУТ а 5cH ─ать/освободить вк у 4eH 4fH SEARCH искать ы с замм (■Z) именем 11H 12H искать в ем kи  с 29H разобрать овое Уа в ат сP─0 Группы  й  э M([3 l fN O i jx#Ще0]B  я ?ами 4bH EXEC: пить порожденный ? 26H *ть префикс Aного 4а (╒) 62H Mить ╩╒его ?а 31H и ┌27H Яиться, но остаться 6ным 00H и ┌20H традиционный TERMINATE: Яение Aы 4cH TERMINATE: Яиться, Zав Зоа родительскому ?у 4dH Mить Зоа Яившегося ?а ┌23H Яение  Ё-° ┌24H Яение  mчик критических ` Щи Яение A Префикс Aного 4а (╒) "а Юка а EXEP─0 Группы  й  э  JKLx Э ЩЙ0]B  я ^ю 48H ALLOCATE ;ить ┼_(Фfить наибольший вный) 49H FREE Освободить ;енный ┼_ 4aH SETBLOCK: сжать Ф:ить ┼_ Щи Яение описывает ;ение _EЩе Aы MCB описывает "у ┼а я ^ю э(НЕТ В ДОКУМЕНТАЦИИ) ╒поля MemTop и MemAvail имеют отношение к данной теме ┌12H ╣щает общую ^0ыP─0 Группы  й  э  )X')Y)Z+-/ T 0 9:F#p0]B Смешанные  э 1aH ить ╩ь 5cH ─ка/освобождение ва 25H ить ╛Fя 5eH =е сетевые  0eH ить ий иэ 5fH Vение сетевых  0dH сбросить и(Ыать овые ┴а) 29H разобрать в Уа в с-ате 2bH ить 0ную ДАТУ 2dH устновить 0ное ВРЕМЯ 57H Ъсить ╢/лу а 2eH ить %╜и 37H SWITCHAR: ить '1-Yь' Ж 38H ить ую $у 44H ┘: канал взаимокия с бом аP─0 Группы  й  э 2h;iDj0Щ# N-{B ┌20H: Яить AуFе Оуется жоа из Aы и ╣та я ро-дительскому ?у (lо Ратору Жэ- Ў.COM).Оно ╕ет Ця их ╛ов ┌22H ┌23H ┌24HОно же сбрасывает ╡овые ┴а (аза а Хилась, то еен └предварительно закрыт).Важно: 9CS еен +ать Це ╒Яающегося ?а. аваш CS не равен ╒, вы е выль JMP ФRET на ╒:0.Рекомендуется Оовать  ю 4cH Terminate, избежать трудностей,связанных с неравенством CS и ╒. Она Oет же заль Зоа.Aы COM-ата lо пяются ECS=╒, им ~выдавать┌20H в любой момент. EXE-Aы могут выдавать FAR JMP ФFAR RET, Zать е на ╒:0, где +ится Ся ┌20H.P─-  ╙-·  э    ] z f k k l o-{B ┌21H: 2э Fе служит главным │ом ├а  й э.Aа, запрашивающая 2э, ена подготовить всю uую ина-цию в 9ах и их ┼ах, ть в 9е AH rжелаемой функ-ции эи Чвызвать Fе ┌21H.См.же:  э  эпо группам О  ях э.ие  Ф╛ы эНЕ ░ются  Fе ┌21H: ┌20H Яить Aу ┌25H Абсолютное е иа ┌26H Абсолютная Ыь на и ┌27H Яиться, но остаться 6ным ┌2fH Мультиплексное Fе (спулинг печати)P─-  ╙-·  э  fNl 37 j' Щ(Mx-{B ┌22H: ╩Яения╩в м ╛е (0:0088) представляет собой место, куда ┬Zаное, Иая Aа Яится по одной из .их  й: ┌20H (традиционный ов э) эFn 00H эFn 4cH (EXIT) ┌27H (TSR: Яиться, но остаться 6ным) эFn 31H (KEEP)эEнимает во внимание т ╛Eснятии  ┌24H (критич.aа).╩в м ╛е копируется в поле ╒Terminate № ями э 26H (*ть ╒) и 4bH (EXEC).Не выдавайте ┌22H и не ░йте т ╩непосредственно.P─ Щи Яение A  ╙-·  э  +Щ(N1 5 '(+-x--{B- .┌23H: ╩оа по Ё-°╩в м ╛е (0:008c) - ╩, по Вому Zается е,Иэраспознает, Lь нажал Ё-°.╩по ╛у ┌23H копируется в поле ╒Ё-°№ ями э 26H (*ть ╒) и 4cH (EXEC). Исходное Це ╩а mчикаЁ-°╕ется из ╒EЯении Aы. им образом,по Яении порожденного ?а ┬восстановлен ╩mчикаЁ-°из родительского ?а.┌─┐│ Распознавание │ э░ет ┌23H, Ираспознает, нажата комбинация└─┘ Ё-°. Уровень чувствительности эк Ё-°└Bен Флен посредством  33H: а°=ON, эраспознает Ё-°в течение ╡х  й, за исключе- нием 06H и 07H . а°=OFF, эраспознает Ё-°лишь во ╢iй ┐а-▓а с консолью, Cом и Hыми Jами.┌ ─┐│ mка │ lая 0ная mка Ё-°░ет немедленное снятие└ ─┘ Aы. перехватить mку Ё-°и Zать еевашей Aе, воспользуйтесь .ими советами: ▒ите  ю 25H , ить ╛┌23H на ваш Aный З. E│е в ваш mчик Ё-°╡9ы (яют те Ця, Вые они имели E│е в  ю э, распознавшую Ё-°. авы хотите игнорировать Ё-°, просто выдайте IRET. авы хотите -нибудь сделать (скажем, прекратить повторение цикла), (ите ╡9ы Zвашим кием и восстановите Iкия. оите  IRET. Не !ует ограничений жвашего mчика - ~ Оовать ╡ э. Однако, аmчик Ё-°сам пяет 1ьный в/в, а Lь вновь нажмет Ё-°в ╢, то э катастрофически сбивается. авы хотите снять ?(выйти в родительский ?), ите  CF и выдайте FAR RET. заставляет эпить lую процедуру оа в порождающий ?. Самый легкий способ убедиться, ?распознает нажатие Ё-°-  ╢от ╖и ░ть  ю э0bH.P─ Щи Яение A  ╙-·  э  Щ(/M ж@uEф"U;$U,+i .ф 5 ▓@>gCO kQ▓QxBQ R┌24H: mчик критических `т ╛(0:0090) хранит ╩, по Вому Zается е, Иба эобнаруживает критическую aу. ╩по му ╛укопируется в ╒функицями 26H (*ть ╒) и 4bH (EXEC). Eое родитель-ские Ця ╕ются в ╛е ┌24H из родительского ╒.Нормальный mчик ┌24H - З, Вый выдает сообщение: Abort, Retry, Ignore? _Вое вы видите Eнеготовности иеты ФCа.Наиболее сложные Aы Gляют собственный mчик критических`.┌─┐│ │ │ E│е в mчик ┌24H 9ы +ат .ие ме:└─┘ BP:SI => Юок а , Oющий fить сбойное о DI = ╞ы 0-7 +ат Зaи (╞ы 8-15 не eы) AL = ав AH ╞7=0, то в AL rиа (0=A, 1=B, и т.д.) AH = Пя об aе: ╓7┬6┬5┬4┬3┬2┬1┬0╖ ║ │0│ │ │ │ │ ║ Замеч: а╞7=1, ╞ы 0-6 не eы ╙╥┴─┴╥┴╥┴╥┴─┴─┴╥╜ ╞ ║ ║ ║ ║ ╚╦╝ ╚═ 0: тип iи: 0=е, 1=Ыь ║ ║ ║ ║ ╚═ 1-2: закованная pь иа: ║ ║ ║ ║ 00=0ные ы, 01= а т ║ ║ ║ ║ 10=kе, 11=pь мх ║ ║ ║ ╚═ 3: 1=FAIL-оразрешен ─┐ ║ ║ ╚ ═ 4: 1=RETRY-оразрешен ╞═ э3.x ║ ╚ ═ 5: 1=IGNORE-оразрешен ───┘ ╚═ 7: тип а: 0=и, 1=прочиеВы е mать aу, Ъсив кие Lя ({, подгото-вить иету Ф║ить C).  эвыше 0cH не следует Оо-вать (исключая  ю 59H , Вая работает нормально).Вы е Mить дую Пю   ю 59H и/Ф ┼Юка а, ╩уемый  BP:SI.┌─┐│ о│ Imки aи вы е Эзить в 9AL Зкия└─┘ и вернуться в э, в одно из .их кий: AL=0: игнорировать aу AL=1: повторить iю AL=2: снять. Яить  ╩┌23H (МEЁ-°) AL=3: вернуться в Dе, индицируя сбившуюся  ю э э3.x Bьте AH E│е, fить допустимые кия.Опция AL=3 кажется идеальной. {, аiя "bть " вызвалаaу из-за отсутствия иа в е, вы е Gить вашему Eло-жению самому mать эту ситуацию. Однако эта опция имеет недостатки:  Опция AL=3 НЕДОСТУПНА в ╝ях эмладше 3.0  э┤╣щает Зaи 53H, Вый не очень инативен┌─┐│ Стек │ E│е в mчик ┌24H, стек имеет состояние, описанное ниже:└─┘IP ╩ж╣таCS в э IRETFlagsAX,BX,CX,DX,SI,DI,BP,DS,ES 9ы Eкладной Aы Z┌21HIP ╩ж╣таCS непосредственно в DеFlags 9ов DяЭту Пю ~Оовать, fить сбившуюся  ю ( AHв стеке) и любые \ы ( другие 9ы). Но более !енно то,ваш mчик ┌24H восстановить 9ы и о!ить ╣тнепосредственно в Eкладную Aу.lо ваш mчик ┬имитировать э, Эжая AX Зом aи эивзводя CF, индицировать aу (хорошие Aы и поступают).Ивы ╣щаетесь в Dе им способом, то, Мутверждается в до-кументации, э┬в "неустойчивом" состоянии до тех пор, пока не ┬выз-вана  я с rом старше 0cH. Тем не менее, ая техника успешно исполь-зуется многими Aами.╛┌24H ИГНОРИРУЕТСЯ жиовых `, встречающихся E┌25H/26HP─ Зы `э Щи Яение A  э $нп)К u&j?#j5$▓+1нA1м;";4*;н!HuJК-J{BJ K┌25H/26H: Прямая иовая iя я/Ыи┌ ─╥─╥=─│ │ ║ AL ║ rиа (0=A, 1=B, и т.д.)└ ─╢ CX ║ счетчик считываемых ФЫываемых 3ов ║ DX ║ zльный 3(Аий r3а э) ║ DS:BX ║ ╩мх (исходный Фцелевой ┴)┌ ─╫─╫=─│ о ║ AX ║ Зaи, авзведен переноса (CF=1) (см. ниже)└ ─╢ ║ Ця ╡х 9ов Jятся, за исключением DS,ES,SS,SP ║ ║ ВАЖНО: эти  оставляют одно лишнее слово в стеке ╙─╨=─т 2эGляет прямой вк любому 3у иа, вному э-·Фемые бы .  ┌25H читает 3ы  ┌26H Ыывает 3ыАие 3ы эyются с Гого 3а . [ый 3в >еэ- Аий 30. rа Аих 3ов возрастают сzла жНого 3а на  е, Чпо Ной головке, и наЕпо Ному ци-линдру на е.Заметьте, Главная Гая Ыь и любые другие 3ы вне >а эневны  т 2. Fе ┌13H - единственный 2,Вый Gляет полный вк любой части ого иа.См.  у тна предмет того, Мэ;яет Аие 3ыпо Йам, Оуемым во ╡х иовых iях э.┌─┐│ aи │ aи, возникающие в ?е ┌25H/26H, НЕ nются обра-└─┘ ботчиком кртических `┌24H . Eое из ┌25H/26H,э-·взводит переноса (CF=1), Ивстречается aа.ален CF:AL = aа а (0-0cH) - аналогично ╞ам 0-7 в DI ж┌24H -  один из Зов `13H-1fH (без 13H) в списке Зов `эAH = одно из .их Цй: 80H = attachment failed to respond 40H = aа iи поиска на ие 08H = xая Дьная сумма (CRC) Eи иеты 04H = Ъшенный 3не найден 03H = попытка Ыи на защищенную от Ыи иету 02H = aа, отличная от перечисленных выше┌─┐│ Eмер │ Участок Aы, читающий Гой 3иеты:└─┘ mov al,0 ;выбрать иA mov dx,0 ;выбрать Гой 3эи BPB mov cx,1 ;один 3... lea bx,my_buf ; ... в ┴по ╩у DS:BX int 25H pop dx ;удалить лишнее слово из стека jnc no_err ...и т.д. ;mать любую aу иа (Зв AX) no_err: ...и т.д. ;проеить (`s)Ье: Не следует предполагать, 3+ит ровно 512 ╟. Исполь-зуйте  1cH Ф32H либо прочитайте Гой 3, fитьистинный <3ов.┌─┐│ 32 мега╟а? │ Утверждается, эRивает максимальный объем иа└─┘ в 32 Мб, но, строго говоря, неправда. ж&ыхбов <3а равен 512K. Очвидно, , поскольку наиболь-ший r3а, Вый ~Kь в DX ж┌25H/26H, равен 65535,максимальный <иа Mается равным 32767K, Ф32M.Однако не-IBM'овские бы (Фбудущие бы IBM) могут Rивать раз-мер 3а, больший 512 ╟. Пому ж<а иа sпрактических огра-ничений. Даже жсегодняшних бов, 32-мега╟ный максимум относится лишьк единственному >у э. См. тпо поводу этих вопросов.P─ ┌13H (вк иу  ·)  ╙-·  э 9Щ( 3J Щ3 xA\┌27H: Яиться, но остаться 6ным┌ ─╥─╥=─│ │ ║ DX ║ ╩[ого ╟а за 6ным участком Aы└ ─╢ ║ (DX Рируется М-ение от ╒(DS/ES EЩе)┌ ─╫─╫=─│ о ║ s ║ (неEменим)└ ─╨─╨=─╣щает е э, оставляя часть _;енной, I-дующие Aы не будут перекрывать Aный ЗФме в й _.┌27H - традиционный метод ки Aобслуживания Fй иLьских  мх.  я 31H (KEEP) - гибкая альтернатива му.┌27H (и ╡типы оов в э) ╕ет ╛ы ┌22H-24H из ╒Яающейся Aы. Пому т 2нельзя Оовать жкипостоянного обоаботчика критических `Фmчика Ё-°.P─эFn 31H Щи Яение A Fя э цl36A\┌28H: эКвант ╖и э(sв документации)НЕДОКУМЕНТИРОВАННОЕ Fе эОует, Иждет нажатия Ки,а же Z▒ом vых  й эс rами до 0ch ║ительно.PR┌(спулер э) перехватывает т ╛, найти квант ╖и жя ов и ▓а на C. прерыание Оуется же =ми6ными popup-Aами (TSR).lо TSR Оует ┌28H Модну из нескольких своих точек │а.То есть, TSR перехватывает нажатия Ки/Фдругие триггерные события, иет , атребуется ╔изация. Ч, в ?е mки┌28H, TSR ░ет исходный mчик го Fя, и, аЪ-са лен, ╔изирует свой З.ВАЖНО: Popup-Aа НЕ ена Оовать  й эс rами вплоть до▀ 0cH, пока она пяется внутри ┌28H.P─ ┌27H  31H 34H' Fя э ц"M*ЭFLM ╡A\┌2eH: пить Жу э(sв документации)┌ ─╥─╥=─│ │ ║ DS:SI ║ ╩пяемой Жы эв е "Lstring"└ ─╢ ║ (ена └вная ^жЭзки Aы)┌ ─╫─╫=─│ о ║ ?? ║ не ясно, МMить %пенного Ъса└ ─╢ SS,SP ║ разрушены ╙─╨=─НЕДОКУМЕНТИРОВАННОЕ Fе пяет Жу э, Мабы этаЖа была введена в ответ на подсказку э.E│е DS:SI ет на #у, в [ом ╟е Вой +ится за#и, а в Iднем ╟е - 0dH (10dH не │ит в подсчет зы). DB 0fH, "set P╙PT=$p$g", 0dH ; ** #а зой 0fH ╟**т Eмер иллюстрирует основное Оование го 2а -- он Oетть Ця в главном (Гом) jи э. В любых других слу-чаях предпочтительнее  я э4bH ({, пить Ў.COM, ZавМ\#у "/c dos_cmd"), поскольку она полностью документирована.Замеч: Не забывайте сzла сжать ий MCB посредством  э4aH . Оставляйте МНОГО _жстека -- эбуквально пожирает стек. SS и SP ены └(ены Z▒ом и восстановлены I. т 2покрыт тайной. Он явно не Оуется ни одной Aой э, ║ая Ў.COM. Из-за й загадочности мы рекомендуем не Оовать его.P─эFn 4bH (EXEC) jе э Fя э Bфi3 ilAi\j┌2fH: Мультиплексное Fе┌ ─╥─╥=─│ │ ║ AH ║ rмультиплексного ?а└ ─╢ ║ 01H = 6ная порция Жы э'PR┌' ║ ║ 02H = 6ная порция Жы э'ASSIGN' ║ ║ 10H = 6ная порция Жы э'SHARE' ║ ║ 03H-7fH (Шо) ║ ║ 80H-0ffH (вно ждругих ?ов) ║ AL ║ rPи ║ прочие║ зависят от Pй и конкретных мультиплексных ?ов┌ ─╫─╫=─│ о ║ AX ║ Зaи, авзведен CF (ж?ов э)└ ─╢ AL ║ %ки (ж?ов э) ║ ║ 00H = не лен. ~ть ║ ║ 01H = не лен. Нельзя ть ║ ║ ffH = лен ╙─╨=─т ╛(0:00bc) Gляет средства я ?ами, вные╡й 0е из любого Dя.Ный ?еен ║ить себя в цепочку Fй с этим Зом, и Ный?в цепочке еен Bять AH на свой мультиплексный r?а.аЪс относится к другому ?у, ╔ный ?еен Zать уп-равление по [оzльному ╩у Fя 2fH (по ╩у, Вый был в век-торе 0:00bc Zтем, Мий ?ил себя).┌ ─┐│ ╝и э│ ┌2fH не eо жболее ранних ╝й, чем э3.0└ ─┘ В э3.0, ┌2fH eо ТОЛЬКО жPR┌, и Це AH(Вое fяет r?а) не eо. В э3.2, т ╛e, Мописано выше.┌─┐│ Print Spooler │ AH=1 (ФAH=угодно жэ2.x)└─┘ - интерфейс, fяемый жфоновой печати (печатногоспулинга) Iпения Жы э'PR┌'.AL - rPи (0-5). ╡Pи могут ╣щать aи (см. ниже).AL = 0: d%ки ?а о: AL = 00H = не лен, ~ть AL = 01H = не лен, нельзя ть AL = ffH = ленAL = 1: направить к спулеру DS:DX => направляемый пакет -ение 0 =уровень (┤0 жэ3.0, 3.1 и 3.2) -ение 1 =DWORD ╩(-ение,4) #и ■Z, +ащей и, путь и Уа, направляемого в очередь печати (глобальные - обобщенные - имена НЕ допускаются)AL = 2: снять выбранные ы DS:DX => #а ■Z с именем удаляемого из очереди а (глобальные 1ы допускаются в имени)AL = 3: Снять ╡ы (удалить ╡ы из очереди и остановить печать)AL = 4: %. ╣щает счетчик `и задерживает очередь жизучения. Оуйте Pю 5, освободить очередь. ╣щает: DS:SI => ┼описания а в очереди Один Фt┼ов с ■Z-именами ов. Е┼а отмечается именем, yющимся с 00H. DX = счетчик Hых `, встретившихся E попытке ▓а Iднего 1а.AL = 5: Е%а. Освобождает очередь жпроеения печати.AL = 0f8H-0ffH: (7ируется жэ) aи спулера: ален CF, то AX +ит Зaи: AX haи ▀ .▀ 1 xый r  2 не найден 3 Путь не найден 4 Слишком много ов (sвных gей) 5 вотвергнут 6 xый gь (▌) 8 Uе очереди 9 Занято 0cH Путь и Уа превышают 64 1а 0fH xый и 4▀┌─┐│ Assign │ AH=2 - мультиплексный rж6ной порции Жы э└─┘ 'ASSIGN'. eа Pя AL=0 (ль %ки).┌─┐│ Share │ AH=10H - мультиплексный r6ной порции Жы э'SHARE'.└─┘ eа Pя AL=0 (ль %ки).┌ ─┐│ *ние собственного ?а │ Руководство эTech Ref разъясняет, вы└ ─┘ е Оовать ┌2fH М│жки и ва к вашему собственному 6ному ?у. Идея состоитв .ем: авы @о Оуете ╛Fя жвашего собст-венного ва, то вы подвергаетесь eному риску, особенно в мультиза-дачной 0е. аже вы Оуете предлагаемую мультиплексную "цепочку",то эзнает о вас, и ваш ╛не ┬перекрыт другим mчиком.Одна возможная проблема: sпредeного способа fить мультиплекс-ный rвашего ?а (9AH). Плохо Eвязываться к конкретному чис-лу, ибо sгарантии, другой ?не ┬Оовать т же r.Вы ены предусмотреть Мую-то логику, гарантирующую вам четкое опознаниевашего ?а.Ваш ?еен по меньшей мере Оовать Pю AL=0, вы могливыяснить, не был ли ?уже лен ранее.Ье: аваш ?Оует 2э, Фпяется с незамаски- рованными Fями, то он еен └реентерабельным.O─эFn 31H ┌27H- Fя э  qжзи й л к мr vB емые бы емый ба Oет вам *ть &ый интерфейсмежду эи не&ым oем. .ие темы касаются й проблемы: Основы бов . общее введение в бы  Схема Юка а . "а [ой части образа ба ╚а . ╞овые и, fяющие о Ъсы а . Жы, пяемые бом а Юок Ъса а . "а [ых 13 ╟пакета Ъса aи ба а . Зы `, ╣щаемые бом в э Слово состояния а . ╞овые и состояния, ╣щаемые в э ┼\ов ·(BPB) . схема, Оуемая блочными ами Спецификация :енной _.  EMM ются Мб ї.SYS . директива DEVICE= ет быO─B  э 8жE v& ж #й,*и,.к<1p2Основы бов емый ба - Aа в 'ом ата,Эжаемая в ^во ╢Эзки э.ба хранится в двоичном е. Iассемблирования исходногоЗа, Оуйте EXE2BIN, преобразовать его в двоичный . В отличиеот ов ата .COM, не Зируйте ORG 100H в zле За.[ой частью а ена └18-╟овая "а - Юок а .[ые 4 ╟а ее эмодифицирует Eке ба. аї.SYS+ит директиву 'DEVICE=', описывающую ба, то т ┬лен, т.е. ║ен в цепочку бов. В 5ате "ленное" уст-ройство имеет преимущество Zбом эжодноименного а. ╔═ Юок а ═╗ ╓───┬───┬───┬───┬───┬─╥─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─┐╔══║NextDev│ │ │ │C O N ║ Зи ме ANSI.SYS │║ ╙─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─╨─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─┘║ ╓───┬───┬───┬───┬───┬─╥─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─┐║ ║NextDev│ │ │ │C O N ║ Зи ме а CON │║ ╙─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─╨─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─┘║ ╓───┬───┬───┬───┬───┬─╥─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─┐╚══║NextDev│ │ │ │L P T 1 ║ Зи ме а LPT1 │╔══╙─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─╨─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─┘║ ╓───┬───┬───┬───┬───┬─╖╚══║NextDev│ │ │ │C O M 1 ║╔══╙─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─╜║ ╓───┬───┬───┬───┬───┬─╥─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─┐╚══║NextDev│ │ │ │C O M 2 ║ Зи ме COMn │╔══╙─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─╨─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─┘и т.д.┌─┐│ Strategy и ╪│ Два поля в Юке а - 16-╞овые└─┘ ╩а Aв Зовом 4е ба.По любому Ъсу а эсzла ░ет Aу Strategy, Zаваяей ╩Юка Ъса в ES:BX. Задачей Aы Strategy является сохра-нение го ES:BX жIдующего Оования (в мультизадачной среде жго требуется Rивать FIFO-очередь Ъсов).Чэ░ет Aу ╪(без \ов). Ее задача состоит визвлечении ╩а самого "свежего" Юка Ъса и mке Жы, ука-занной в Юке Ъса. =е Жы Оуют разные"ы пакетов мх в 0е э. См. "ы Ъсов , гдеEведены Жы и их описания. Мправило, б+ит невроде N-арного узла ветвлений жmки ╡х возможных Ъсов.mав Ъс, беен ить Слово Состояния а , инди-цирующее %Яения и aи, а Чвернуться в э FAR RET.O─< бы    s;уAф7 Н%p&?+F1$ж.( s* s=*{+Спецификация :енной _Эта тема описывает альную спецификацию Lotus/Intel/Microsoft, Оуемуюжва к "Exp√ed" _в PC-,ой 0е. См.  EMM об описании 2а ┌67H.eия: ■ "Extended" ^стоит ТОЛЬКО на AT (PC на ?оре ▌286▐ ). ^, Вая занимает физическое ╩ное про$ство за 1 Мб. В э3.2 эта ^Оуется жRAM-иов. См. ┌15H, Q. 87H-89H. ■ "Exp√ed" ^Оует EMS-,ую плату _и Aный б, ║ить в ^$ицы, Вые могут "разворачиваться" и "вытесняться" из физического ╩ного про$ства за lым пределом 640K (т.е. за ╩ом a000:0). Платы EMS *ют четыре 16K-╟овых $ицы (╡го 64K) ╩уемой _, Eобщем объеме в 8 мега╟ суммарной _, вной ж"свертки" и "развертки".EMS является промышленным стандартом, Oет им Aам, МLotus1-2-3, Оовать эту ^жхранения больших КЭТ. EMS же ОуетсяжRAM-иов и спулеров печати. vые 6ные Aы Оуют^EMS жхранения мх и $иц За (тем самым Оуя минимальное640K-╟овое ╩ное про$ство).┌!─┐│ eие, лена ли EMS │ EMS-^управляется емым└!─┘ бом а с именем а"EMSX0", известным МEMM (EMS Manager). fить, лен лит б, воспользуйтесь  ей 3dH , попытаться bть оМ. bв , Оуйте  ю 44H (┘) Q. 07H, Mить%. а╣щенный %(в AL) равен 0, то EMM НЕ лен, а с именем "EMSX0" на ие по Мой-то Eчине !ует.ИбEMM ется, он ирует ╛┌67H, ющий наЮок его а. Пому еще один способ Bить наличие EMS - извлечь ╩из ╛а ж┌67H (0:091c) и Bить -ение 0aH от го╩а. Там ено └слово "EMSX0". См. "у Юка а┌ ─┐│ 2EMM │ жобращения к менеджеру _EMS Оуйте ┌67H с Зом└ ─┘ Pи в AH, Мописано в  ях EMMP─  EMM1  ╙-· >r t t t" t) t- t1 t8 t@ tI tM tV tc te t0erf EMM Здесь описаны =е 2ные  менеджера Exp√ed-_. Сводка  й EMM ▐!▀█"▀▌ ▐ 40H ль %EMM █ 47H Сохр. картирующий кон ▌ ▐ 41H ль ╩4а фрейма █ 48H Восст.картирующий кон ▌ ▐ 42H ль общую/вную ^█ 49H,4aH (7ируется) ▌ ▐ 43H bть/распред. $ицы █ 4bH Счет $иц gя ▌ ▐ 44H Картировать ^ █ 4cH Счет ╔ных gей ▌ ▐ 45H Закрыть/освобод. $ицы █ 4dH ль инф. по ╡м gям▌ ▐ 46H ль r╝и EMM █ 4eH ль/Уст. полную карту стр. ▌ ▐!▄█"▄▌вызвать  ю EMM, Эзите в AH r , подготовьте остальные9ы, Мтребуется ж , и ▒ите ┌67H. Bьте %воз-врата в 9е AH. аAH ненулевой,  я не пена.EMM Fn h■ H■AH=40H ль %EMM. Оуйте Iки EMM. См. EMS ╣щает: AH= %EMM■ H■AH=41H ль физический 4ный ╩фрейма EMS (64K в четырех 16K-┼ах) ╣щает: BX= ╩4а (аAH=0) AH= %EMM■ H■AH=42H ль <_EMS / вную ^ ╣щает: DX= ╡го $иц EMS в 0е (16K Ная) BX= $иц EMS, свободных в ий момент AH= %EMM■ H■AH=43H bть gь (▌) EMM и ;ить ^ │: BX= требуемое $иц ╣щает: DX= gь EMM (Оуется в Iдующих iях) AH= %EMM■ H■AH=44H Картировать ^. ║ить от 1 до 4 ;енных $иц _ в физическое ╩ное про$ство. │: AL= rфизической $ицы (от 0 до 3) BX= логич. стр. (0 до [n-1], где n = ╡го $иц на gь DX= gь EMM ╣щает: AH= %EMM■ H■AH=45H Закрыть gь EMM. Освободить ^, ;енную  ей 43H │: DX= gь EMM ╣щает: AH= %EMM■ H■AH=46H ль r╝и EMM ╣щает: AL= r╝и EMM в Зе BCD (AL=0302 - ╝я EMM 3.2) AH= %EMM■ H■AH=47H (ить картирующий кон. EMM (яет ее )ие физи- ческих $иц Аим $ицам EMS, popup-Aа Ф ба могут Оовать свое картирование Eпении.  я EMM 48H ╕ет [оzльное картирование. │: DX= gь EMM запрашивающего ?а ╣щает: AH= %EMM■ H■AH=48H Восстановить картирующий кон. EMM ╕ет )ие фи- зических и Аих $иц им, Моно было в момент предыдущего ▒а  EMM 47H с тем же gем. бы и popup-Aы ены ░ть эту  ю Zтем, Мвернуться в Dе. │: DX= gь EMM запрашивающего ?а ╣щает: AH= %EMM■ H■AH=49H (7) Не eо жEMM ╝и 3.2AH=4aH (7) Не eо жEMM ╝и 3.2■ H■AH=4bH Подс$ицы gя. ╣щает $иц EMS, Eнадле- жащих gю. │: DX= gь EMM (?иметь более одного gя) ╣щает: BX=Аих 16-K $иц на gь (1-512) AH= %EMM■ H■AH=4cH Подс╔ные gи. (Полезно Z▒ом  EMM 4dH) ╣щает: BX=╔ных gей AH= %EMM■ H■AH=4dH ль Пю о $ицах ж╡х gей. ╣щает массив дан- ных, описывающих $иц EMS жНого ╔ного gя. │: ES:DI= ╩┴а. ╣щает: BX= ╔ных gей EMM ES:DI ┴заполняют 2-словных ов. [ое слово а - rgя, второе - общее $иц, Eнадлежащих му gю. AH= %EMM■ H■AH=4eH ль/ить полную карту $иц. Эта  я предназначена ж Rки мультизадачных OS, обеспечить более полный Дь EMS. Картирующий массив +ать разнообразную Пю, зависящую от oя. │: AL= rPи AL=0 Mить картирующий 9в массив ES:DI AL=1 ить картирующие 9ы из массива DS:SI AL=2 комбинация Pй 0 и 1 AL=3 Ъсить <┴а, требующийся жQ. 0-2 ╣щает: AL - <┴а картирующих 9ов (Pя 3) ES:DI - ┴+ит массив мх EMS (Pи 0 и 2) AH= %EMMP─ %EMM% Спецификация :енной _  s0r%EMME╣те из Ъса ┌67H к менеджеру Exp√ed-_9AH ┤+ит З%а/aи. а%не равен 0, то Ъшенная  яне пена. eы .ие aи: % Це ▀ ?▀ 0 s`;  я пена (╡прочие:  я не пена) 80H внутренняя aа ба EMM 81H сбой платы _EMS 82H EMM занят 83H xый gь (▌) 84H Ъшена не eная  я 85H sвных gей EMM 86H aа E(ении Фвосстановлении картирующего кона 87H Ъс ;ения превышает общую ^EMS 88H Ъс ;ения превышает вных $иц 89H попытка bть gь с нулевым счетчиком $иц 8aH ваш gь не располагает им м $иц 8bH xое картирование. eы лишь физические $ицы 0-3 8cH Uе pи (ения картирующего кона 8dH ~(ять конлишь один раз на gь 8eH нельзя ╕ть конбез предварительного (ения 8fH не e\PиP─  EMM$ Спецификация :енной _ Ъ."k#н,k,н-8-".FG.ф /4;/ц0>фCфEфJ k.bоtЪМн(Мм2Н k Р4ЩнЩЪ0ЩkЪ а ;ения ов э(т)т- связный список, Вый эОует жотслеживания физическогорасположения мх на ие и жпоиска свободной _жновых ов.Слово по -ению 1aH в е kя +ит rЙа ж[огоЙа в цепочке ;ения а. )ующий тлибо указы-вает Ецепочки, либо ссылается на .ий , и т.д. Eмер:" rzльного Йа ══╗ ╓─┬─┬─┬───┬───┬──┬─╖kя║M Y F I L E T X T│a│ │tim│dat│08 │ за ║ ╙─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─╫─┴─┴─┴─┴─╜$ ╔═╝ 00 01 02 03 04 05 06 07 ║8 09 0a 0b 0c 0d 0e 0f ┌──┐┌──┐┌──┐┌──┐┌──┐┌──┐┌──┐┌──┐┌─┐┌──┐┌──┐┌──┐┌──┐┌──┐┌──┐┌──┐00 │ID││ff││03═04═05═ff││00││00││09═0a═0b═15││00││00││00││00│ └──┘└──┘└──┘└──┘└──┘└──┘└──┘└──┘└──┘└──┘└──┘└╫─┘└──┘└──┘└──┘└──┘ ╔═╝ ┌──┐┌──┐┌──┐┌──┐┌──┐┌─┐┌──┐┌──┐┌──┐┌──┐┌──┐┌──┐┌──┐┌──┐┌──┐┌──┐10 │00││00││00││00││00││16═17═19││f7││1a═1b═ff││00││00││00││00│ └──┘└──┘└──┘└──┘└──┘└──┘└──┘└╫─┘└──┘└─┘└──┘└──┘└──┘└──┘└──┘└──┘ ╚═╝Эта диаграмма иллюстрирует основные концепции т. Из нее видно, : MYFILE.TXT занимает 10 Йов. [ый Й- Й08, Iдний Й- 1bH. Цепочка Йов - 8,9,0a,0b,15,16,17,19,1a,1b. Ный эле- мент ет на .ий цепочки, а Iдний +ит 'ый З. Й18H помечен Мплохой и не │ит в цепочку ;ения. Йы 6,7, 0cH-14H и 1cH-1fH пусты и вны ж;ения. Еще одна цепочка yется с Йа 2 и кончается Йом 5. узнать Уа, нужно отыскать kя с zльным rом Йа 02.┌─┐│ Кое-о т│ тlо yется с Аого 3а 1 в >е э└─┘ (т.е. ее ~пропо ┌25H с DX=1). В общем случаесzла надо проГой 3(DX=0) и взять -ение 0eH. Там но,сколько Гых и 7ных 3ов стоят Zт. Оуйте Ч(lо 1) М+имое DX, прот ┌25H.!овать tкопий т. lо Rиваются две идентичныхкопии. В этих случаях ╡копии расположены непосредственно друг за другом.эGляет .ий 2, помогающий вам исследовать т:  ┌25H Oет Гой 3и исследовать его поля   э36H и 1cH Oют fить общее 3ов и Йов  Оуйте 44H (аб. Rивает Generic ┘) э3.2   я 32H Gляет много полезной Пи. НЕТ В ДОКУМЕНТАЦИИЬе: Гой 3неЭжаемого иа (типа сетевого блочного уст- ройства Фого иа старых моделей) не +ать ниМой полезной Пи.┌─┐│ 12-╞/16-╞│ тсостоять из 12-╞овых Ф16-╞овых ов.└─┘ 12-╞овые ы эффективны жиет до 384K -- всятумещаться в одном 512-╟овом 3е. жqей большего разме-ра ие ы ттребуют ╡больших и больших <ов Йа -- вплотьдо того, ж20-мега╟ного иа Eходится о!лять ;ениеединицами по 16 3ов, уместиться в 12-╞овые ы т. (Инымисловами, одно╟овому у ;яется 8K ╟иового про$ства).16-╞овые ы тбыли введены, yя с э3.0 , Ивозникла необ-ходимость эффективного я 20-мега╟ным ым иом. Однако гибкиеии и 10-мега╟ные ые ии проеают Оовать 12-╞овую схему.Вы е выяснить, Мую из двух схем исповедует ваша т: э3.0 : аи+ит более 4086 (0ff6H) Йов, он Оует 16 ╞(4096 - максимум ж12-╞ового числа, а >0ff6H 7ируется) э3.2 : аи+ит более 20740 (5104H) СЕКТОРОВ, он Оует 16 ╞(т.е. любой ибольше 10 мега╟Оует 16-╞овую т)Ье: По общему заблуждению считается, 16-╞овая тне Oет э работать с иами, большими 32 мега╟. На самом деле, ограничивает то,  ┌25H/26H неспособно работать с СЕКТОРАМИ, rа Вых больше 65535. По- скольку <3а lо 512 ╟, Фполовина кило╟а, то диктует 32-мега╟овый лимит. С другой стороны, нине запрещает вам иметь 3ы большего <а, теоретически эработать с любыми иами.┌ ─┐│ е т│ пролюбой т(следуя по цепочке т),└ ─┘ сzла прочитайте в ^всю ти Mите из kяzльный rЙа. Ч, в случае 12-╞овых ов: Умножьте rЙа на 3 ═╗ >ите 5ат на 2 ═╩═ за а - 1.5 (3/2) ╟ Прочитайте СЛОВО по 5ирующему ╩у (-ению от zла т) аrЙа четный, маскируйте слово маской 0fffH (младшие 12 ╞) аrЙа нечетный, сдвиньте Це вправо на 4 ╞а 5ат дает ж.его Йа в цепочке (0fffH=Е). Ье: 12-╞овый пересекать границы двух 3ов, будьте внимательны, асчитываете по одному 3у т.16-╞овые ы проще -- Ный +ит 16-╞овое -ение (отzла т) .его а в цепочке (fH индицирует Ецепочки).┌─┐│ +имое т│ [ый ╟тназывается дексриптором qя , Ф└─┘ тID ╟ом. .ие 5 ╟(12-╞овые т) Ф7 ╟16-╞овые т) +ат 0ffH. Остальная часть тсостоит из 12- Ф16-╞овыхов, Ный из Вых представляет один Йи +ит одно из:  (0)000H . вный Й  (f)ff0H до (f)ff7H . Шный Й  (f)ff7H . плохой Й  (f)ff8H до (f)fffH . Ецепочки ;ения  (0)002H до (f)fefH . rЙа .его а в цепочкеЬе: старшая цифра Ця Оуется в 16-╞овых т; наE- мер, плохой Йотмечается Цем 0ff7H в 12-╞овых ти Цем fff7H в 16-╞овых т.┌0─┐│ Преобразование rа Йа в r3а │ Mив zльный r└0─┘ Йа жа из а kя , вы захотите обратиться к реальному 3у иа.иета (Ф>эого иа) "ирована .им образом:  Гой и 7ируемые 3ы  т#1  т#2 (необязательна - не Оуется в RAM-иах)  Гое kе  pь мх (║ая ы подkй)Ная секция в й "е имеет Xую зу, и жкорректного преоб-разования Йа в 3uо знать зу Ной ой секции. Следую-щие улы дают единственный документированный способ eия rа логи-ческого 3а эиз rа Йа: RootDirSectors = Sectorўs / (RootDirEntries * 32) FatSectors = FatCount * SectorsPerFat ыStart = ReservedSectors + FatSectors + RootDirSectors LogicalSector = ыStart + ((StartCluster - 2) * SectorsPerCluster)где Ця Xых: Sectorўs SectorsPerFat FatCount RootDirEntries ReservedSectors SectorsPerClusterизвлекаются из Гого 3а Физ BPB (авы имеете к нему в).5ирующий r3а дает Це DX ж┌25H/26H .авам не занимать отваги, вы е избавиться от ╡х этих хлопот, Оуяwную  ю э32H (ль Пю о ие), Вая предо-ставит вам пакет уже рассчитанных мх, ║ая r3а, с Вогоyются ме.Ье автора: Наилучшее Eменение, Вое я нашел жт- обойтисредства поиска ов эи о!лять свое собственное сканирование оглавле-ний. Прямой вк 3ам kй дает Eмерно двукратное ускорениепо сравнению со &ым 2ом э.P─ Схема Гого 3а kя ┌25H/26H: Прямой иовый в/в ? ┤-u7::Яфб9м9+п{╝p╝ ╙"╝FA╝ ╜ї.SYSИэстартует, она Эжает IBMBIO.COM с иа Эзки. Эта Aаищет в Гом kи ї.SYS. ат !ует, он счи-тывается и Рируется Мнабор Жконфигурации, Вые оказывают!енное возкие на eные аспекты  онирования э.Здесь рассматриваются .ие Жы конфигурации:Жа  я █ Жа  я ▀ ▀ █  ▀ ▀BREAK= уровень Bки Ё-°█ LASTDRIVE= лимит иов жSUBSTBUFFERS= иовых ┴ов █ FILES= макс. gейCOUNTRY= Пя о $е █ SHELL= Ратор ЖDEVICE= ба █ STACKS= стек Fй oяDRIVPARM= я не знаю, а вы? █ SWITCHAR= 1-Yь ЖсS= макс. с(сети) █N▀ї.SYS еен иметь &ый ■-ат, и Ная #а а е-на заканчиваться CRLF (■0dH,0aH). В конце а (необязательно) Eсутствовать 1Ё-Z (■1aH). Жы Зируются в свободной е.Допускаются Мстрочные, и прописные буквы, а знак равенства ('=') └окружен пробелами. вые \ы, там, где они Eменимы, ены└десятичными числами.Жа  я ▀ E▀BREAK= ет уровень Bки Ё-°. ат:BREAK=ON BREAK=OFF BREAK = ON Oет вручную снимать vые Aы, Вые в противном случае будут пяться до своего Яения. ■ E■BUFFERS= ет ┴ов (жиовых 3ов), Вые э Оовать. Oет ускорить vые iи с иами. ат:BUFFERS=BuffCnt BuffCnt - ┴ов, от 2 до 99. По ю 2. Увеличивая иовых ┴ов, вы повышаете вероятность того, эсобойтись без обращения к иу, и тем самым увели- чиваете суммарную скорость пения иовых iй. Вы ены ть Мминимум с┴ов, сколько требуется жразмеще- ния ╡й т, Мона читается часто. Кроме того, большое ┴ов ускоряет mку больших "kй. Слишком большое ┴ов снижает эффективность, потому  эвынуждена тратить много ╖и на Bку состояния Ного ┴а. Серьезное замедление наблюдается, yя с 50 ┴ов. Мы предлагаем .ие Ця жЖы BUFFERS:  AT с 20- Ф30-мега╟ным ым иом: BUFFERS= 32  XT с 10-мега╟ным ым иом: BUFFERS= 16  PC (гибкие ии): BUFFERS= 4 ■ E■COUNTRY= ет "ую $у" (см.  ю 38H ). Це возкует на ат лы/╖и и ┐а жЎ.COM. ат:COUNTRY=З$ы Перечень Зов $Eведен в описании  38H . По ю Eнимается США (001). ■ E■DEVICE= ет ба во внутреннем списке бов э. ат:DEVICE=[d:] "" - [путь и] Удвоичного а с образом ба. .ие бы поставляются вместе с э: E─ DEVICE=ANSI.SYS э2.0+ ║ает :енные средства консоли. См. ANSI.SYS E─ DEVICE=[d:][путь]VDISK.SYS [K╟] [SecSize] [DirSize] [/E[:MaxSec]] э3.x ет RAM-и. hопций: K╟ суммарный ение ов. ат:сS=MaxCnt,KeepCnt MaxCnt - максимальное одно╖но bтых ов (1-255; е=4), Илена Жа SHARE. KeepCnt задает с, защищенных от автоматического закрытия, Идостигнуто Це MaxCnt. заставляет Жу SHARE Eзакрытии ов оставлять [ые KeepCnt ов bтыми. ■ E■FILES= ет gей ов в 0е. ат:FILES=Max▌s Max▌s - максвимальное gей ов , Вое э ┬Rивать (от 5 до 99, е=8). Многие Dя тре- буют Ця FILES=20. См. Зaи э12H. ■ E■LASTDRIVE= ет лимит обоЦй иов жЖы эSUBST. э3.0 (но имеет смысл лишь yя с э3.1 ) ат:LASTDRIVE=d 'd' - однобуквенное обоЦе иа (от A до Z; е=E). эRивает 80-╟овую pь жНого иа. жфизичес- ких и Аих иов, в й pи отслеживается ее умал- чиваемое kе. жиов SUBST, 0а хранит в й pи кительный ии путь kя, )ующие данному обоЦю иа. ■ E■SHELL= Заменяет Ратор Ж(Ў.COM) другой Aой. Оуется же жки <а jя жЎ.COM. ат:SHELL=[d:][\ы] увеличить <jя э, Оуйте Жу вида: SHELL=Ў.COM /E:1000 /P /E задает ╟, а /P форсирует пение AUTOEXEC.BAT. ■ E■SWITCHAR= - НЕДОКУМЕНТИРОВАННАЯ Жа конфигурации жэ2.x , Вая ет 1'переключения' жЖной #и. См.  ю эFn 37H . ат:SWITCHAR=c 'c' - один 1(е='/'). Замысел й Жы - позволить Lям выбирать 1, ука- зывающий zло опции в Жной #е ({, '-'), и освобо- дить слэш ('/') жОования в именах путей. Эта воз~сть не описана и не Оуется утФтами. В э3.2, SWITCHAR не рас- познается Мправильная Жа конфигурации; тем не менее,  я э37H по-прежнему работает. ■ E■STACKS= Эта Жа решает проблему реентерабельности и одно╖ных Fй от oя. См. Fя и 2╙-·. ат:STACKS=FrmCnt,FrmSiz FrmCnt фреймов (порций) стека, ;яемых э (от 8 до 64; е=9) FrmSiz <в ╟ах Ной порции стека (от 32 to 512; е=128) EНом Fи от oя э;яет стековый фрейм из пула и ет SS:SP жmчика прерыааний. Iвоз- врата из mчика Fй, стековый фрейм ╣щается в пул.P─ бы  Зы ANSI ┘  э   ┤_"A(BKBHMFз$pB■AB C&ый ┐-▓yя с ╝и 2.0, эRивает UNIX-подобную концепцию Vения&ого ┐а и &ого ▓а. Эта концепция fяетспособ, Вым одна Aа направляет свой ▓в другую Фперехватывает▓другой Aы.ане Vен, &ый ┐┐ит с Лы, а &ый ▓▓ит на ; и тот, и другой являются  ями а CON. Родитель-ский ?(ой МЎ.COM) Vить &ый ┐, стан-дартный ▓Фи тот, и другой, Zтем МZать е порожденно-му ?у. Gляет мощный способ Zачи Пи от ?ак ?у Eминимальных Aных издержках.См. gи ов о перечне предeных gей &ого в/в. 1ьного в/в , а же 3fH / 40H реализуют &ый в/в.Оуйте gь а 02H (&ое о `) с  ей 40Hж▓а сообщений об aах.Оуйте  ю э46H (FORCDUP), Vить &ый в/в.Оуйте  ю э4bH (EXEC), пить порожденный ?.Оуйте  ю э44H (┘), fить, был ли Vен&ый ┐-▓. ╚а жемого ба а ет, е-но ли о Ооваться Мо &ого ┐а и/Ф▓а.┌─┐│ Ў.COM и &ый в/в │ Ратор ЖэBяет Ную└─┘ Жную #у на 1ы Vения┐а-▓а, прежде чем пять внутреннюю Жу Ф░ть Aу:?<  пяет ?; ┐"с Лы" берется из а?>  пяет ?; ▓"на " идет в ?>>  пяет ?; ▓"на " добавляется в ?1 | ?2 1. пяет ?1, ▓идет во ╖ный  2. пяет ?2, ┐берется из ╖ного а 3. Удаляет ╖ный Ья:  Vение ▓а 1ом '>' *ет оной , усекая его зу до 0 до того, МSв него. Оуйте '>>', добавить ▓ в Е!ующего а.  Вы е Оовать "канал" ("|"), сцепить вместе t Aи Жэ: DIR | SORT | FIND /v "i" >myfile.txt  Ный ╖ный "канальный" имеет уникальное У, ируемое из цмфр их лы и ╖и. ие ы *ются ┤в ем ом kи ого иа.  tполезных случаев Vения Жы ECHO: ECHO ^L >PRN (посылает 1прогона на C) ECHO y|DEL *.* (отвечает "y" на вопрос "Are you sure?") ECHO ATDT 1(213)555-1234 >AUX (соединяет по телефону)  Направляйте ▓на о NUL, избавиться от vых сооб- щений э: COPY *.COM d: >NUL (подавляет сообщение "1 File(s) copied")  Ў.COM игнорирует 1ы Vения, заключенные в кавычки: REM Я Оую 1больше-чем ">" в м комментарииP─Нажмите , вернуться к предыдущей теме  э !Щ ╡CMDфЩ ╡ Ы $h)$i3$j& B1 е/; еEЩ VЩcNd#df lNm Oql*q3 s O{c|Щ }( ~M [ А13А Б ╡4Д DД ЕЩи Яение AэЭжать и пять Aные ы двух типов -- COM и EXE.Ввиду 4ации ╩ного про$ства ?ора 8088/86/286 и того факта,Tы (JMP) и ▒ы (CALL) Оуют отqьную ╩ацию, оба типаAмогут пяться в любом месте _. Aы НИКОГДА не пишутсяв предположении, они будут Эжаться с eного ╩а (за исключе-нием vых самоЭжающихся, защищенных от копирования игровых A). COM-ата - двоичный образ За и мх Aы. ой  еен занимать менее 64K и не +ит Wаемых ╩ов 4ов. EXE-ата +ит 'ый Юок, Eпомощи Вого Эз- чик пяет настройку ссылок на 4ы в Эженном модуле.┌─┐│ ╡Aы │ ZЭзкой COM- ФEXE-Aы эfяет└─┘ 4ный ╩, называемый префиксом Aного 4а(╒), Мбазовый жAы. эвыбирает Eм наименьший вный╩; другая ая Aа (скажем, Microsoft Windows) выбратьлюбую часть _. Чэпяет .ие шаги: ■ *ет копию его jя эжAы.  я э4bH (EXEC) Oет родительской Aе *ть другое jе. {, про- грамма запустить Ў.COM, ив в качестве подсказки э "Use EXIT to return to UltraProg>". ■ Помещает путь, откуда Эжена Aа, в Еjя. э3.0+ ■ Заполняет поля ╒Пей, полезной жЭжаемой Aы (См. Префикс Aного 4а на предмет "ы этих мх):  количество _, вное Aе  4ный ╩jя э  0-2 неbтых ┼а сМ5ат разбора Жной #и (Ье: bв [ый с, вы перекроете часть второго)  \ы Жы: в точности те 1ы, Вые введены в Же (подлежат разбору жeия опций и \ов)  ие ╛ы Fй ┌22H ┌23H и ┌24H ■ ет ый ╩ьна ╒:0080 ■ Эжает 9AX Цем, отражающим корректность обоЦй иов (аесть) в \ах, введенных в Жной #е:  аAL=0ffH, то [ое обоЦе иа xо  аAH=0ffH, то второе обоЦе иа xо┌─┐│ EXE-Aы │ EXE-Aы +ат tAных 4ов, вклю-└─┘ чая 4За, мх и стека. EXE-Эжается, начи-ная с ╩а ╒:0100. В ?е Эзки считывается Пя Юка EXEв zле а и пяется Wение ╩ов 4ов. озzет, ссылки типа mov ax,ы_seg mov ds,ax и call my_far_procены └Eведены (пересчитаны), учесть тот факт, Aа былаЭжена в @о выбранный 4. См. Юок EXE о подробностях"ы Юка и ?а Wения.IWения е Zается Эзочному модулю посредством инструк-ции далекого Tа (FAR JMP) к ╩у CS:IP, извлеченному из Юка EXE.В момент Mения я Aой EXE-ата: ■ DS и ES ют на ╒ ■ CS, IP, SS и SP Тированы Цями, нными в Юке EXE ■ поле ╒MemTop +ит Це, нное в Юке EXE. lо вся вная ^;ена Aе.┌─┐│ COM-Aы │ COM-Aы +ат единственный 4(Ф, во всяком└─┘ случае, не +ат явных ссылок на другие 4ы). ОбразCOM-а считывается с иа и помещается в ^, yя с ╒:0100. Заме-тим, COM-Aа Оовать множественные 4ы, но она енасама вычислять 4ные ╩а, Оуя ╒Мбазу.COM-Aы предпочтительнее EXE-A, Идело касается небольшихассемблерных утФт. Они быстрее Эжаются, ибо не требуется Wения сег-сентов, и занимают меньше места на ие, поскольку Юок EXE и 4стека отсутствуют в Эзочном модуле.IЭзки двоичного образа: ■ CS, DS, ES и SS ют на ╒ ■ SP ет на Е4а ╒(lо 0fffeH, но └и меньше, аполный 64K 4невен). Слово по -ению 06H в ╒ет, Мая часть Aного 4а вна.■ Вся ^0ы за Aным 4ом ;ена Aе.■ Слово 00H помещено (PUSH) в стек.■ IP +ит 100H ([ый ╟модуля) в 5ате Жы JMP ╒:100┌─┐│ оиз Aы │ Одно ╢(в эпоху э1.1), hсхемы оа из└─┘ Aы, Вую изобрел жэRube Goldberg, зани-мало t$иц. yя с э2.0, жить стало легче. Вы е выйти:   ю 4cH (EXIT) в любой момент, независимо от Цй 9ов.   ю 00H ФFе ┌20H , Иваш CS ет на ╒.До ╝и э2.0, вы ены были (ять 4╒EЩе. Ч,выйти, вам Eходилось помещать т 4в стек, далее помещать встек слово 00H, и наЕпять FAR RET. Zавало е на╩╒:0, +ащий ЗFя ┌20H. Эта процедура гарантировала,9CS лся им, Мим его ожидала э. я э4cH аняет эти сложности и Oет вам ╣щать родительскому?у (lо Ў.COM) Зоа , Вый └Bен ░ю-щей Aой ФЖой Ў.COM "IF ERRORLEVEL".Вы е же Яить Aу и оставить ее постоянно 6ной (TSR),Оуя либо ┌27H , либо  ю э31H (KEEP). Iдний способ имеетте преимущества, 6ный З└знее 64K, и вы есировать Зоа жродительского ?а.TSR-Aы удобны Eке Lьских заплат жэи ·.Эта концепция Оуется popup-утФтами, ими МSideKick и ваш покорныйслуга TECH █! (аназывать наиболее важные Eмеры)..ие пункты имеют отношение к рассматриваемой теме:  я ?ами индекс  й Ща и Яения Префикс Aного 4а детальная "а ╒ эFn 26H . построить ╒ эFn 4bH (EXEC) . Эзить и пить Aу эFn 62H . Mить Це ╒жей Aы эFn 2fH . Mить ий ь jе э. fить ии kе, из Вых" Эжена ая AаP─4  э Темы █  ф Ь`%XB 8ва / 8bтия╝я э3.x добавила в овую 0у эсетевые воз~сти и  ─ки ов. дые сложности ены lо проявляться лишьжтех ?ов, Вые предполагается Оовать в сетевом jи.8ы ва э2.x 0 = bть жя(без сетевой Rки): 1 = bть жЫи) 2 = bть жя и Ыиэ3.x же Rивает эти 8ы. В ней 8ва Рируется Мнабор ╞овых флажков:╓7┬6┬5┬4┬3┬2┬1┬0╖║i│ shr │0│ r/w ║ ╞овые и 8а bтия╙╥┴─┴─┴─┴─┴─┴─┴─╜ ∙ ║ ╚═╦═╝ ╚═══╩═ 0-2: Права ва ?а в сети ║ ║ 000 = е; 001 = Ыь; 010 = е и Ыь ║ ╚ ═ 4-6: 8>ения: 000 = 8,ости 0H ║) 001 = монопольный захват а 10H ║) 010 = отвергать Ыь 20H ║) 011 = отвергать е 30H ║) 100 = ничего не отвергать 40H ╚═ 7: Наследование: 1 = Eватный жго ?а 80H$ 0 = наследуется порожденными ?амиа╚а индицирует е, он перекрывает эти и.╞ы прав ва в сети и 8а >ения имеют эффект в том случае,Илена Aа эSHARE.P─ ▌-cй в/в  я 5cH (LOCK)  э  6   g ф\+]B О  ях э эпредставляют собой неорганизованную кучу средств я ами,ами, ^ю и ?ами, вных любой Aе, Вая способнаить 9ы и вызвать Aное Fе.обратиться к  э:  Kе r эв 9AH (аесть Pи, то rPи lо помещается в AL)  Эзите остальные 9ы согласно описанию    подготовьте uые ┴ы, #и ■Z и ие ┼и  фиксируйте (Фите) местоположение ь, аuо  ▒ите Fе ┌21H  Bьте индикатор aи, ╣щенный э(переноса)эне Хяет Цй 9ов, исключая случаи, И5ирующиеме ╣щаются  9ы.В ?е развития эновые ╝и остаются (в целом) ,ыми с болееранними ╝ями. См. ╝и эна предмет обсуждения не,остей.P─ Fя э Группы  й э  э |Е7Х}И7Ц~Й7ЧКАМБН О П В Р Г С ТДУФ \?╒Fя и служба ╙-·Fя 2 тели▀ ▀ ▀ ┌00H Деление на 0 ┌10H ╗2 ┌1dH ╗\ы ┌01H Пошаговое ┌11H Список oя ┌1eH \ы иет ┌02H Немаскируемое ┌12H <исп._ ┌1fH 1ы графики ┌03H Точка прерыв. ┌13H иовый в/в ┌04H Uе ┌14H В/в  Hый J ┌05H Печать а ┌15H :.2AT ┌41H ▄ш0 parms ┌06H (7) ┌16H В/в Лы ┌46H ▄ш1 parms ┌07H (7) ┌17H В/в Cа ┌08H Таймер ┌18H ╙-BASIC ┌44H фgraphic chars ┌09H Ла ┌19H Эзка ┌0aH-0dH (hdwr ints) ┌1aH В/в таймера ┌4aH user alarm addr ┌0eH иета ┌1bH Fе Лы ┌50H CMOS timer int ┌0fH (hdwr int) ┌1cH Lьское Fе по таймеру ┌20H-2fH Fя эP─? Xые · -{B ┌00H: Uе Eделении?ор автоматически ░ет Fе Iпения ЖDIV ФIDIV, а5ат iи деления (частное) не умещается в поле 5ата.Эта ситуация ║ает и деление на 0. {: mov ax,4000H ;делимое mov bl,2 ;делитель - ╟, пому частное - тоже ╟(AL) div bl ;4000H/2 = 2000H, не умещается в ╟е AL ; пому пяется Fе ┌00HФпросто: mov bx,0 div bx ;любое деление на 0P─-  ╙-·  э -{B ┌01H: Пошаговое Fеален трассировки ?ора (TF=1), CPU ░ет FеIНрй Жы.Отладчики, Вые Oют вам о!лять пошаговое пение Aы,Оуют Fе, перехватывать е и выдавать 9ы,^и т.п.Трассировка отключается (TF=0) Eпении любой Жы ┌, само┌01H пяется не в пошаговом 8е. Iоа из Fя ( IRET) ╡и ╕ются, .ая Жа вновь ▒етпошаговое Fе.lый способ zть трассировку - Kь в стек слово, +ащее ╡нужные и (║ая TF=1), Kь в стек требуемые Ця CS и IP, аЧпить IRET, zть трассировку с нного ╩а.P─-  ╙-·  э у-{B ┌02H: Немаскируемое FеНемаскируемое Fе (NMI) - единственное Fе, не запрещаемоеЖой CLI. Пому его ~Оовать в 'ых случаях, Выетребуют немедленного кия.Fе спроектировано жmки катастрофических ситуаций, их Мсбой питания. В 0е, обеспечивающей целостность мх, NMI , {,▓ить образ _на ис целью избежать потери мх. В &ой0е PC ·, NMI аппаратно ░ется в случае "aи четности" _.Ипроисходит, PC зависает. А теперь скажите мне, чувствуете ли вы себяв безопасности, зная, ┬потеряна вся ваша ^, а не t╞?Со?ор 8087/80287 подключен к линии NMI, и ░ет Fе, Ивстречает условие исключения ({, деление на 0). lо вы ены J64H, выяснить, не произошел ли сбой _, и аs, питьFNSAVE, ить Eчину сбоя 8087, а ЧFNCLX жанения aи. Ье: PC Jr Оует NMI ж┐а по инфракрасной связи.P─-  ╙-·  э -{B ┌03H: Fе по точке╛Fя ┌03H Оуется отладчиками, перехватывать управ-ление, ИAа достигает нного Lем ╩а.Зiи ж┌03H занимает один ╟(0ccH), им ~╖нозамещать zло любой Жы, не боясь заJить .ую Жу.P─-  ╙-·  э -{B ┌04H: Fе по Uю╛┌04H Ооваться Модин из способов оптимизации A,+ащих большое арифметических iй.Выданная Iлюбой арифметической iи, Жа ┌O о!ляет B-ку на арифметическое Uе, и, аUя взведен (OF=1),░ет Fе ┌04H.Вам, воз~, встречался Зтипа .его: mov ax,var_1 add ax,var_2 into ;2-╟овая Жа Bки на Uе ... и т.д. ... ;либо не было Uя, либо оно уже mаноP─-  ╙-·  э 2Г├9 Е-{B ┌05H: Печать а┌05H, к ужасу фирмы Intel (Вая считала его Шным прерыва-нием), Оуется в PC ж▒а Aы ╙·, печатающей .Fе ░ется mчиком Fя ┌09H EраспознаванииКи PrtSc. Оно же ░ться из Aы, и вы е перехваты-вать Fе, ахотите Gить свою Aу печати а.В ф ·есть  я, заменяющая lое средство Print-Screen Aой,Вая nть =е ные фонты. См. ┌10H Q. 12H.Жа э"▀" заменяет эту Aу своей, Вая выдает ний(в точечном представлении) на IBM-,ый ний C.P─-  ╙-·  э % ╒-{B ┌08H: Fе от таймерааппаратно генерируемое Fе (IRQ 0) ░ется по Ному тику часовреального ╖и PC. Часы тикают Ные 55мс, Фоколо 18.2 раз в секунду.З╙-·жго Fя обновляет Це часов на 0:046 сек. тЗже выключает двигатели гибких иов по истечении Eмерно двух секундбез iй ┐а/▓а. См. же ме ·.авы хотите Оовать Fе жmки событий, зависящих от╖и, вы ены предусмотреть З, сообщающий 0е, ИFезакончено. Магическая Hость ова: mov al,20H ;послать сигнал Е-Fя out 20H,al ; Длеру Fй 8259├о AОуют жго ╙-·. {, вzле AаLя (яет ╛╙-·в Xой с именем cs:[saved_int8].Чпо Ному Fю ┌08H пяется .ий З: pushf ;имитировать ┌ call dword ptr cs:[saved_int8] ;пить нормальную mку cmp cs:my_var,test_value ;теперь сделать свои черные дела ... и т.д. ... iret ;╣т в прерванную Eкладную Aу "Zнего плана"P─-  ╙-·  э  О╖ ╧ ╢ ╗& ╒& ╫,&{A& '┌09H: Fе от Лыаппаратно генерируемое Fе (IRQ 1) пяется EНом нажатии иотпускании Ки. З╙-·Рирует , (яя Ця в ┴еЛы по ╩у 0:041e. Он же nет 'ые случаи КPrtSc и SysReq, и отслеживает состояние КShift и =х Lock.См.: ┌16H  . 2·жва к ключам, запомненным в бу- фере, и опроса состояния служебных К. /ы  . перечень Цй ╡х возможных ключей, Мони Eнимаются Fем ┌09H.  а ■ :ение ■. сводка Цй, (яемых ·в ┴е Лы Iтрансляции /ов. и Лы . МMить, Bить и модифицировать ╞овые Ця ов Shift и Lock.6ные popup-Aы, Вые lо предусматривают "кнопку ▒а",перехватывают ┌09H и Bяют на eный ключ Eмерно : push ax in al,60H ;ключ cmp al,POP_KEY ;кнопка ▒а? je do_pop ; да, ╔изировать popup$ ; s, уйти на исходный mчик pop ax jmp cs:[int9_vect] ;Tна [оzльный mчикdo_pop: ;- .ий Зuжотработки аппаратного Fя in al,61H ;взять Цe Jа я Лой mov ah,al ; (ить его or al,80h ;ить ╞разрешения жЛы out 61H,al ; и вывести его в ий J xchg ah,al ;извлечь исходное Це Jа out 61H,al ; и Ыать его обратно mov al,20H ;послать сигнал "ЕFя" out 20H,al ; Длеру Fй 8259 ;- дальше - прочие Bки, и наЕ- ╔изация popupP─ ме · Jы в/в  ╙-·  э 4К █  ╒-{B ┌0eH: Fе от иеты┌0eH - аппаратно генерируемое Fе (IRQ 6), ░емоеДлером флоппи-иов.З╙-·взводит ╞7 в Xой ·"seek_╧" (0:043e), я,запущена iя поиска на иете. Fе ┌13H Оует т, fить, не требуется ли рекалибрация Длера Z.ей iей.P─ Jы FDC ме ·  ╙-·  э  1Ж2З, ├,├,├BуI├ ▀ ▐. ╒={┌10H: ╗2 Ниже Eведен перечень  й ╗2а, Gляемых ╙-·.Подробное h й ┌10H см. в теме: Детали ╗2аhдых воз~стей ф см. в: ф ·2AH 2 AH 2▀▀▀ "▀ ▀▀▀ #▀00H уст. ╗8 0aH S101H уст. <и у Ба 0bH выбрать палитру/ бордюра02H уст. Nю Ба 0cH Sную точку03H Nю Ба 0dH ную точку04H световое перо 0eH S1в 8е TTY05H выбрать ╔ную $ицу дисплея 0fH ╗806H листать окно вверх (Фочистить) 10H ф уст. палитру07H листать окно вниз 11H ф генератор 1ов08H 1/╚ 12H ф 'ые  09H S1/╚ 13H S#у (▌AT▐ + ф )P─ Jы в/в CGA Jы в/в ф ме ·  ╙-·  !ЕЗ ▐ ▀├!уjЗlуl├yЗ-y ╒ ▓имая #а (спецат жAL=2 и AL=3) CX = за #и (подсчитываются 1ы) DH,DL = #а,колонка zла ▓а BH = r$ицы AL = ЗPи: 0 = Оовать ╚в BL; не трогать Б 1 = Оовать ╚в BL; Б- в Е#и 2 = ат #и: char,attr, char,attr...; не трогать Б 3 = ат #и: char,attr, char,attr...; Zвинуть БP─Pи 10H-13H: ф ·2 ме ·  ╙-· '╝B├Ж ▐$├' ╕├E=Ч4NЧW├aуa├nЕ nЖ"n ╒=n{oф ·2Эти  ются в ?е ╙-Scan Eналичии платы ф .См. Детали ╗2а Q. 00H о ╗8ах, Eменимых к ф.См. Jы в/в фо прямом ве к средствам платы ф.AH 2▀▀▀ L▀10H ить 9ы палитры жф Выбирает  а, Оуемые мм ╚ом а. ые  а - те же, Оуются с CGA (см. ╚ы а ). │: AL = 0: уст. один 9палитры BL = 9(идентифицирует 4-╞овый  ; 0-15) BH = Це 9а (6-╞овый rgbRGB выдаваемый  ) AL = 1: уст. 9бордюра. Note: not much of a border. BH = Це 9а AL = 2: уст. ╡9ы палитры и 9бордюра ES:BX => 17 ╟(9ы палитры и 9бордюра) AL = 3: выбрать интенсивность Фмерцание BL = 0: интенсивность фона (16 возможных  ов фона) BL = 1: мерцание (8  ов фона + мерцание Zнего плана) Ця 9а палитры жPй 0,1,√2: ┌─7─┬─6─┬─5─┬─4─┬─3─┬─2─┬─1─┬─0─┐ │не исп.│ r g b/I R G B │ (6 ╞= 64 возможных  а) └───┴───┴───┴───┴─╥─┴───┴───┴───┘ ╚═ кует Минтенсивность ж8ов CGA▀▀▀ L▀11H ф єgenerator functions. Resets video variables without change to ╬яvalues in ╬regen buffer (ie, ╬screen is not cleared). │: AL = 0: load user-defined text-╓цfont ES:BP => user font table CX = count of єpatterns to store DX = єoffset (font load starts at this ■value) BL = font block to load (0 to 4; 4 if 256K ф╫) BH = count of ўs per єpattern (eg, 8 or 14) AL = 1: load ╙8x14 єfont BL = font block to load (0-4) AL = 2: load ╙8x8 double-dot єfont BL = font block to load (0-4) AL = 3: set block specifier (уs two of ╬four 256-char sets) ╬second set of 256 chars is ╨ed by attribute ∙3. (in o╬r words, if you ╨a "рeground color" above 7, ╬фцs ╬secondary font). BL = font block ╨or (4 ∙s, 0-0fH) ┌─7─┬─6─┬─5─┬─4─┬─3─┬─2─┬─1─┬─0─┐ │ not used │block# │block# │ └───┴───┴───┴───┴───┴───┴───┴───┘% ╚═╦═╝ ╚═══╩══ ╨ed when attr ∙3=0' ╚ ═ used when attr ∙3=1 L▀ Sub-functions 10H,11H,√12H expect page 0 to be active √should be used directly after a ╓reset. ╬se recalculate rows √ columns √reprogram several CRTC ╤s, including ╬cursor ╤s. AL=10H: load user-defined text-╓цfont (see SubFn 00H) AL=11H: load ╙8x14 єfont (see SubFn 01H) AL=12H: load ╙8x8 double-dot єfont (see SubFn 02H) L▀ AL=20H: set up user єfont р▀╓s ES:BP => 2048-ўtable of 8x8 єset р┌1fH AL=21H: set up user єfont р▀╓s ES:BP => table of 8x8 єset р┌44H CX = points (ўs per є) BL = screen rows code 0 = user-specified DL = єrows on screen 1 = 0eH (14 єrows on screen) 2 = 19H (25 єrows on screen) 3 = 2bH (43 єrows on screen) AL=22H: set up ╙8x14 єfont р▀╓s BL = screen rows code (see above) AL=23H: set up ╙8x8 double-dot єfont р▀╓s BL = screen rows code (see above) L▀ AL=30H: Get фinрmation BH = table pointer request code 0 = return ES:BP => я┌1fH ▀font addr 1 = return ES:BP => я┌44H ▀font addr 2 = return ES:BP => ╙8x14 font table addr 3 = return ES:BP => ╙8x8 double dot font table addr 4 = return ES:BP => ╙8x8 double dot addr (top) 5 = return ES:BP => ╙9x14 alternate table addr о: CX = font points (font-definition ўs per є) DL = screen rows▀▀▀ L▀12H ф special functions (Alternate ╨) │: BL=10H: return фinрmation о: BH = ╓(0=color; 1=monochrome) BL = ╫size code (0=64K; 1=128K; 2=192K; 3=256K) CH = feature ∙s (values of those unused RCA connectors) CL = switch settings (adaptor/цprimary/secondary) │: BL=20H: ╨alternate print-screen routine (be sure to use this every time you change ╬number of screen rows).▀▀▀ L▀13H ╠string ▌AT▐ ф цs a string at a ╨ed cursor position. єs 0dH (CarRet), 0aH (LineFeed), 08H (bksp), √07H (Beep) are treated as ёЄs √are not цed. │: ES:BP => string to ц(special рmat рAL=2 √AL=3) CX = length of string (єcount only) DH,DL = row,column to start цing BH = page number AL = sub function code: 0 = use attribute in BL; don't update cursor 1 = use attribute in BL; leave cursor at end of string 2 = string рmat: char,attr, char,attr...; don't update cursor 3 = string рmat: char,attr, char,attr...; do update cursorP─ ┌10H Video Service Detail ·ы ╙-·Functions ║ у< ╜ ╒={┌11H: Bка oя┌11H ╣щает в AX ╞ы, ющие леннное/╔ное oе.$ Смотри Список oя о "е этих ╞овых ов. ▌AT▐ имеет же ме конфигурации, хранящиеся в CMOS-_P─ ме ·0  ╙-·  r4 sCН/ч ╜ Щ(x ╒-{B ┌12H: <Оуемой _┌12H ╣щает AX = кило╟_в PC.то же Це, Вое хранится в 0:413. Оно не ║ает переключаемую:енную ^(см. Спецификацию Exp√ed-_). Оно же не ║ает"extended-^" с ╩ами выше 1 мега╟а. См.  EMM и ┌15HжPC, Це берется из Yей. Машины PCjr, XT и ├оим подобных пяют просмотр _во ╢POST , fить объем_. AT считывает свою CMOS-^, fить объем RAM. Префикс Aного 4а (╒) любой Aы же +ит Це<а _; обращение к ╒:0002 - lый способ fить, сколько _вно Aе. (эФиная ая Aа Gить вашейAе не всю имеющуюся ^). См. Щи Яение A.P─ ме ·  ╙-·  э 52k<k ╫█Л░▒$ Л%-Л%1Л;у>у%AЛDу DуKу2M▒OуQу Qу%SЛVу Vу%YЛ[у [у%]Л_у _уbу%dЛfу%hЛjу jу lЛnу nу pЛrу sЛuу vЛxу xу yЛ{уГуЙуС╫С█1С ╒?С{Т┌13H: иовый ┐-▓т 2Gляет прямой ва ╦ам иеты и ого иа.Рекомендуется там, где воз~, Оовать ┌25H и ┌26H , пре-доставить бам эпять всю низкоуровневую mку. Разу-меется, жих iй, Матирование иа Фка защиты откопирования, Fе ┌13H оказаться единственной альтернативой.См. же: Карта Jов в/в и Jы Длера иет" (Pи > 8 - жых иов)Pи: 00H сброс Длера 08H ль парам иа 10H Bить готовность 01H ль % 09H иниц табл парам 11H рекалибрация 02H 3ы 0aH зное е 14H диагностика 03H S3ы 0bH зная Ыь 15H ль тип иа 04H ╜я 0cH искать  16H Хить % 05H атир гку 0dH альтерн сброс 17H уст тип иаAH 2▀▀▀ L▀00H Сброс а. ░ет рекалибрацию Длера. аDL равен 80H Ф81H, пен сброс контр иа, иначе FDC.▀▀▀ L▀01H ль %aи Iдней iи. │: DL = и. DL < 80H = иета; DL > 7FH = ый и о: AL +ит Зaи иа (то же, Це по ╩у 0:0441)▀▀▀ L▀02H 3ы │: DL = rиа (0=иA...; 80H=тв.и0; 81H=тв.и1) DH = rголовки я/Ыи CH = rгки ( а)(0-n) ═╗ CL = r3а (1-n)  ═╩══ См. Ье ниже. AL = 3ов (в сумме не больше чем один  ) ES:BX => ╩┴а ░ющей Aы 0:0078 =>  а \ов иеты (жгибких иов) 0:0104 =>  а \ов тв.иа (жых иов) о: Carry-=1 Eaе и Зaи иа в AH. ES:BX ┴+ит ме, прочитанные с иа Ье: на 3и  отводится )енно 6 и 10 ╞: 1 1 1 1 1 1 ╓5┬4┬3┬2┬1┬0┬9┬8╥7┬6┬5┬4┬3┬2┬1┬0╖ CX: ║c c c c c c c c C c S s s s s s║ ╙─┴─┴─┴─┴─┴─┴─┴─╨─┴─┴─┴─┴─┴─┴─┴─╜! ╚═╩═══ исп. Мстаршие ╞ы rа  а▀▀▀ L▀03H S3ы │: (аналогично Pи 02H) ES:BX => ме, Ыываемые на и. о: Carry-=1 Eaе и Зaи иа в AH.▀▀▀ L▀04H Bить 3ы. Bяет CRC жнных 3ов на aи. │: (аналогично Q. 02H. ES:BX лучше же Gить) о: Carry-=1 Eaе и Зaи иа в AH.▀▀▀ L▀05H атировать гку. ме на гке, аесть, разрушаются. │: DL,DH,CH = и,головка,гка (см. Q. 02H) ES:BX => йы 3ов (требуется 512-╟овый ┴) иета: 1 4-╟овый 'CHNS' ( ,Головка,N3а,<) жНого 3а на гке (т.е. 36 ╟ж9-сек- торных гек); rа 3ов д.б. упорядочены. 'Z' - З<а 3а: 0=128; 1=256; 2=512; 3=1024 ▌AT▐ Тв. и: 1 2-╟овый 'FN' (,N3а) жНого 3а на гке. Hость полей 'N' fяет "коэффи- циент прослаивания" ("interleave factor"). ■XT■ Тв. и: ES:BX не Оуется. Вместо го AL +ит Це "прослаивания" между 1 и 16 (10H). о: Carry-=1 Eaе и Зaи иа в AH. (тв. и: 'F'-поля лены в 80H, пометить плохие 3ы)▀▀▀ L▀08H ▌AT▐ ■XT■ ль \ы иа. ╣щает Пю об е. │: DL = и о: DL = тв. иов на [ом Длере DH = максимальный rголовки CH = максимальный r а (младшие 8 ╞) CL = максим. r3а (и старшие ╞ы макс. rа  а)▀▀▀ L▀09H ▌AT▐ Тировать \ы иа. Сообщает ·о любом динамическом Хении  \ов а. │: ╛ы ж┌41H и ┌46H ╩уют Табл. \ов тв. иа )енно ж0 и 1. Ье: ■XT■ еен ть обе  ы  ╛┌40H.▀▀▀ L▀0aH ▌AT▐ ■XT■ е зное: 512 ╟+ 4-╟оый ECC (Зкоррекции `). │: (МжQ. 02H) о: Carry-=1 Eaе и Зaи иа в AH. ES:BX => в ┴е (ме 3а + 4 ╟а) * 3ов (из AL)▀▀▀ L▀0bH ▌AT▐ ■XT■ Ыь зная. Пишет 512 ╟+ 4-╟овый ECC. │: (МжQ. 02H) ES:BX => ┴+ит ме 3а + 4 ╟а на Ный 3 о: Carry-=1 Eaе и Зaи иа в AH.▀▀▀ L▀0cH ▌AT▐ ■XT■ Искать  . Wает головку к нужной гке. │: DL,DH,CH = и,головка,гка (см. Q. 02H) о: Carry-=1 Eaе и Зaи иа в AH.▀▀▀ L▀0dH ▌AT▐ ■XT■ Альтернативный сброс а │: DL = и▀▀▀ L▀0eH ▌AT▐ ┴3ов │: (МжQ. 02H) о: Carry-=1 Eaе и Зaи иа в AH.▀▀▀ L▀0fH ▌AT▐ S┴3ов │: (МжQ. 02H) о: Carry-=1 Eaе и Зaи иа в AH.▀▀▀ L▀10H ▌AT▐ ■XT■ Bить готовность а │: DL = и о: Зaи иа (%) в AH.▀▀▀ L▀11H ▌AT▐ ■XT■ Рекалибровать о │: DL = и о: Зaи иа (%) в AH.▀▀▀ L▀12H ▌AT▐ Диагностика RAM Длера о: Зaи иа (%) в AH.▀▀▀ L▀13H ▌AT▐ Диагностика а о: Зaи иа (%) в AH.▀▀▀ L▀14H ▌AT▐ ■XT■ Внутренняя диагностика Длера о: Зaи иа (%) в AH.▀▀▀ L▀15H ▌AT▐ тип иа (невна в XT ·) │: DL = и о: AH = За: 0 = о DL отсутствует 1 = иета; логика замены иа отсутствует 2 = иета; логика замены иа вна (├о случаев) 3 = ый и▀▀▀ L▀16H ▌AT▐ %замены иа о: AH = З%а: 0 = ине был заменен 6 = замена ╔на (bта иовая дверь); DL = rзаменяемого иа▀▀▀ L▀17H ▌AT▐ ить тип иеты (Оуется Ziей атирования) │: DL = rа иа (0 Ф1) AL = тип qя иа: 0 = не Оуется 1 = 360K иета в 360K е 2 = 360K иета в 1.2M е 3 = 1.2M иета в 1.2M еP─ Карта Jов в/в Jы Длера иеты ме ·  ╙-·  К у(уIуу&уК-{B Зы `иа ┌13H ╣щает Carry-(CF=1), апроизошла aа. Eм в 9 AH помещается один из Eведенных ниже Зов `. Эти же Ця могут └ ╣щены EЪсе состояния иа (Pя 00H). Ье: Eaе рекомендуется сброс Pей 00H и повторить 3 раза.#Ош. h▀ J▀ 00H Iдняя iя пена без ` 01H плохая Жа: xый Ъс к Длеру 02H плохая ╩ная марка 03H защита Ыи: попытка Ыи на защищенную иету 04H ID 3а запорчен Фне найден. 05H aа сброса -- ▌AT▐ 08H сбой ю 09H перекрытие ю: попытка Ыи  64K-╟овую границу. 0bH встретился плохой гки -- ▌AT▐ 10H сбой CRC: несовпадение Дьной суммы мх. 11H ме исправлены; исправимая aа; исправлено алгоритмом ECC -- ▌AT▐ 20H сбой Длера 40H неудачный поиск. Ъшенная гка не найдена 80H Таймаут. о не ответило0bbH неeная aа -- ▌AT▐0ffH сбой iи опроса (sense) -- ▌AT▐P─ ┌13H%  ╙-·  э ч┌4 ╒=4{5┌14H: ┐-▓ Hый JЭти  ·Gляют вк двум Jам RS-232.yя с 0:0400, хранятся базовые ╩а до 4-х Hых Jов,однако POST Bяет и Тирует лишь два [ых Jа.См. Jы асинхронного ╦а - hаппаратного интерфейса.AH 2▀▀▀ L▀00H Тировать коммуникационный J │: DX = rJа (0-1) AL = ╞овые и \а Тации: ┌─7─┬─6─┬─5─┬─4─┬─3──┬─2──┬─1─┬─0─┐ │ -- бод -- │четность│стоп│за │ └───┴───┴───┴───┴─┴─╥──┴───┴───┘ ╚═╦═╝ ╚═╦═╝ ║ ╚═══╩══ за слова ║ ║ ║ 10=7 ╞; 11=8 ╞ ║ ║ ╚ ═ стоп-╞: 0=1; 1=2; ║ ╚═ Зчетности ║ x0=s; 01=нечет; 11=чет ╚═ бод: 000=110; 100=12009 001=150; 101=24009 010=300; 110=48009 011=600; 111=9600 о: AH = %коммуникаций (см. ниже)▀▀▀ L▀01H послать 1 выбранный JRS-232 │: DX = rJа (0-1) AL = посылаемый 1 о: AL (ен. ален ╞7 в AH, то произошла aа, и AH (╞ы 6-0) = %линии связи (см. AH ниже)▀▀▀ L▀02H Mить 1 выбранный JRS-232 │: DX = rJа (0-1) о: AL = Mенный 1 AH ненулевой, апроизошла aа▀▀▀ L▀03H ль %Jа связи │: DX = rJа (0-1) о: AX = %Jа связи AH = %линии AL = %модема ▀ $▀ ∙7: timeout ∙7: received line detect signal ∙6: trans shift reg empty ∙6: ring indicator ∙5: trans holding reg empty ∙5: ыset ╥y ∙4: °detect ∙4: clear to send ∙3: framing error ∙3: delta recv line signal detect ∙2: parity error ∙2: trailing edge ring detector ∙1: overrun error ∙1: delta ыset ╥y ∙0: ы╥y ╧ ∙0: delta clear to sendP─ ме ·(╩а Jов RS-232, Це таймаута)  ╙-· +у)Г24у?W vД ╒=Д{Е┌15H: :енный 2AT┌15H nет специфические  ▌AT▐ :ПодФнк: 00H Cass motor ON 80H Device Open 86H Wait 01H Cass motor OFF 81H Device Close 87H Move Extended Mem Block 02H ╥cassette 82H Program terminate 88H Get Extended Mem Size 03H ╠cassette 83H Event wait 89H Switch to Virtual ╓ 84H Joystick 90H Device Busy Loop 85H SysReq key 91H Finish ╪Ье: Кассетные Pи опущены жкраткости (мне не нужны, а вам?)AH 2▀▀▀ L▀80H bть . ╣щает, ничего не делая. См. Pи 90H и 91H. │: BX = ID а; CX = ID ?а▀▀▀ L▀81H Закрыть . ╣щает, ничего не делая. См. Pи 90H и 91H. │: BX = ID а; CX = ID ?а▀▀▀ L▀82H Яить Aу а. Ничего не делает. См. 90H и 91H. │: BX = ID а▀▀▀ L▀83H Жль события. Запустить таймер и ить по истечении интервала. │: AL = ЗPи: AL = 0: уст. интервал (и запустить таймер) ES:BX = ╩Lьского ╟а. ╞7 в м ╟е ┬║ен по истечении интервала. CX,DX = за интервала в микросекундах (CX - старшая часть) AL = 1: отменить ожидание события.▀▀▀ L▀84H Обеспечение джойстика. │: DX = ЗPи: DX = 0: ие Yи ╣т: AL = Ця Yей (╞ы 7-4) DX = 1: │ы X,Y джойстика ╣т: AX = джойстик 'A', Це X (горизонталь) AX = джойстик 'A', Це Y (вертикаль) AX = джойстик 'B', Це X (горизонталь) AX = джойстик 'B', Це Y (вертикаль)▀▀▀ L▀85H Ка SysReq. Эта  я ничего не делает. ░ется Fем ┌09H Eнажатии и отпускании Ки SysReq. Идея состоит в том,  iонная 0а перехватывала ┌15H и выдавала Pю 85H, отслеживать состояние (нажата Фотпущена) Ки SysReq. │: AL = 0: SysReq нажата ('make') AL = 1: SysReq отпущена ('°')▀▀▀ L▀86H Жль. Циклит с разрешенными Fями до истечения интервала ╖и. │: CX,DX = сколько микросекунд жль до ╣та к Lю▀▀▀ L▀87H Переслать ┼extended-_. Wает ┼_в extended-^и из нее (RAM выше 1 мега╟а на компьютерах ▌286▐ ). │: ES:SI =>  а глобальных йов (GDT) - см. ниже. CX = счетчик пересылаемых 16-╞овых слов (максимум = 8000H = 32K) о: Carry-= 1 Eaе. AH = 0 saи AH = 2 Fе по исключению AH = 1 ош. четности RAM AH = 3 gate №line 20 failure "а GDT жPи 87H ES:[SI]+00H Фиктивный й (обнуляет Lь) ES:[SI]+08H йй GDT (обнуляет Lь) ES:[SI]+10H й┼а источника (см. ниже) ES:[SI]+18H й┼а наЦя (см. ниже) ES:[SI]+20H Зовый 4ж· (обнуляет Lь) ES:[SI]+28H стековый 4ж· (обнуляет Lь) ; - Eмер GDT ж┌15H, Pи 87H ┌_15_GDT label ў DB 8 dup(0) ;фиктивный DB 8 dup(0) ;эта GDT DW 0 ;source block "limit" value SRC_LO DW ? ;24-╞овый ╩ SRC_HI DB ? DB 93H ;права ва (╥/╠ыseg) DW 0 ;7 DW 0 ;target block "limit" value DEST_LO DW ? ;24-╞овый ╩ DEST_HI DB ? DB 93H ;права ва (╥/╠ыseg) DW 0 ;7 DB 8 dup(0) ;code segment setup by · DB 8 dup(0) ;stack segment setup by · ; - ЕEмерной GDTЬе: Fя запрещаются в ?е Wения мх, , а вы Щаете пачку конкурирующих ?ов асинхронной Zачи, избегайте Wения больших объемов мх. См. VDISK.SYS▀▀▀ L▀88H ль  8-ная  а глобальных дексрипторов (GDT) (ниже) BH = -ение в IDT zла [ых 8 аппаратных Fй BL = -ение в IDT zла вторых 8 аппаратных Fй о: AH = 0, ане было ` ╡4ные 9ы Хяются. AX и BP теряются. 80286 │ит в 8Protected без прямого оа в 8Real. "а GDT жPи 89H ES:[SI]+00H фиктивный й (обнуляет Lь) ES:[SI]+08H йй GDT (Тирует Lь) ES:[SI]+10H йжIDT (Тирует Lь) ES:[SI]+18H йжcaller DS (Тирует Lь) ES:[SI]+20H йжcaller ES (Тирует Lь) ES:[SI]+28H йжcaller SS (Тирует Lь) ES:[SI]+30H йжcaller CS (Тирует Lь) ES:[SI]+38H ╖ный ·CS (обнуляет Lь)▀▀▀ L▀90H Цикл занятости а. Ничего не делает. Я полагаю, , аваши инициалы - MS ФDR, вы е перехватывать эту  ю и заставить ее -то делать. │: AL = Зтипа а 00H = ый и 01H = иета 02H = Ла 80H = сеть ES:BX => ий ┼сети fdH = Щмотора иеты feH = C▀▀▀ L▀91H Яить Fе. Ничего не делает. Идея здесь - Gить механизм жmчика а, Bять занятость а. И mчик Яил mку Ъса, он Оовать эту  ю, ль знать 0е, о свободно. │: AL = Зтипа а (см. Pю 90H) AL = 00H - 7fH: Hо Оуемые а AL = 80H - bfH: реентерабельные а (ES:BX => пакет мх)P─ ме ·0  ╙-·  Г ┘ ╬6 ╢ ╖*╗ _/ ╒={┌16H: 2Лы- интерфейс Eкладного уровня с Лой. Нажатия Кна самом делеnются асинхронно на заднем плане. ИКа Mена от Лы,она nется Fем ┌09H и помещается в циклическую очередь.См. Лу AT о способах ускорения Лы и других сведениях.AH 2▀▀▀ L▀00H (ожиль) .ую нажатую Ку о: AL = ■1(аAL=0, AH +ит :енный З■) AH = / Ф:енный З■▀▀▀ L▀01H Bить готовность 1а (и показать его, а) о: ZF = 1 а1не готов. ZF = 0 а1готов. AX = МжPи 00H (но 1здесь не удаляется из очереди).▀▀▀ L▀02H состояние shift-К. fить, Мие shift-Ки нажаты в мй момент, находится ли Ла в состоянии NumLock, и т.п. о: AL = %Лы -- см. и ЛыP─ э: 1ьный в/в ме ·  ╙-· 9 ╒с@Б ╬) ╤ ╒= {!┌17H: Rка CаЭти  Gляют вк Jам параллельных Cов (LPT1 и т.д.)╩а Jов Cов хранятся, yя с 0:0408. См. ме ·См. Jы Cа о )ующем аппаратном интерфейсе.Ця таймаута Cа yются с 0:0478. Печать а - ┌05HAH 2▀▀▀ L▀00H Печатать 1 │: AL = ■1. См. же: ие Зы ■ DX = rCа (0,1 Ф2) о: AH = 01H а1не напечатан (aа таймаута) другие ╞ы - Мв Pи 02H (и состояния)▀▀▀ L▀01H Тировать JCа │: DX = rCа (0,1 Ф2) о: AH = Мв Pи 02H (и состояния)▀▀▀ L▀02H ль %Cа │: DX = rCа (0,1 Ф2) о: AH = и состояния Cа ╓7┬6┬5┬4┬3┬2┬1┬0╖ ║ │ │ │ │ │ │ ║ ╙╥┴╥┴╥┴╥┴╥┴─┴─┴╥╜ ║ ║ ║ ║ ║ ╚╦╝ ╚═ таймаут (AH & 01H) ║ ║ ║ ║ ║ ╚═ (не Оуется) ║ ║ ║ ║ ╚═ aа в/в (AH & 08H) ║ ║ ║ ╚ ═ выбран (AH & 10H) (00H озzет офлайн) ║ ║ ╚ ═ sбумаги (AH & 20H) ║ ╚ ═ подтверждение(AH & 40H) (40H = Eсоединен) ╚═ не занят (AH & 80H) 0 - озzет занятостьP─ ме ·0  ╙-· ╝ ╒={┌18H: ╙-BASICт ╛+ит точку │а жРатора ╙-BASIC, Вый -лен на за9ированных компьютерах IBM. Клоны (родственники) не имеютBASIC в ╙-_и ены Оовать отдельную Aу, lо GWBASIC.а╙-·не найти ижЭзки, он берет т ╛. делаетвозможным жвнешнего модуля ╙-Scan Хить т ╛, он ука-зывал на него, ░я его Eсбое Фотсутствии иов.P─ ме ·0  ╙-· "ч$Р п н ║=╒={┌19H: zльный Эзчик (Bootstrap Loader)т ╛рассматривается IPOST , попытаться Эзить и питьМой-либо З"zльного ▒а" на иете Фом ие.ме в 3е 1 гки 0 головки 0 иовода 0 ж[ого откликнувшегосяиа (иеты Фого иа) Эжаются по абсолютному ╩у 0:7c00,и е Zается по му ╩у. аопрос ╡х иов неудачен,е Zается на Fе ┌18H .На ом ие, т Зв "Гом 3е" в кительности fяет╔ный >иа, а ЧЭжает и пяет Гой 3жго>а. Zает е ╔ной iонной 0е иа.См.  у >ов иа о Hости Эзки с ого иа.См. "у Гого 3а о ате Гого 3а жэ.Ье: Вы е Оовать т 2, переЭзить эIХения Мих-либо Цй в Списке oя Финых Xых ·(не забудьте ить по ╩у 0:0472 Це 1234H). IпереЭзкиэEмет во внимание ╡ваши Хения.P─=  ╙-·  у ╜уу у'у+у2у5╜5 ╒?5{6┌1aH: ┐-▓ж╖ит 2Gляет вк 0ным часам. PC ·работает со "счетчи-ком тиков" - м 55-мс интервалов, прошедших с момента ║ения ФсбросаPC. ▌AT▐ ·Gляет же вк Цям часов реального ╖и,Вые постоянно обновляются независимо от работы ?ора и хранятся в CMOS-_компьютера AT.AH 2▀▀▀ L▀00H часы (счетчик тиков) о: CX,DX = счетчик тиков с момента сброса. CX - старшая часть Ця. AL = 0, атаймер не переполнялся за 24 часа с момента сброса. Ье: часы обновляются Ные 1193180/65536 (ў 18.2) тиков в секунду. тиков в секунде ў 18 тиков в минуте ў 1092 тиков в часе ў 65543 тиков в сутках ў 1573040▀▀▀ L▀01H ить часы (счетчик тиков) │: CX,DX = счетчик тиков. CX - старшая часть Ця.▀▀▀ L▀02H ▌AT▐ ╢из "постоянных" (CMOS) часов реального ╖и о: CH = часы в Зе BCD (Eмер: CX = 1243H = 12:43) CL = минуты в Зе BCD DH = секунды в Зе BCD о: CF = 1, ачасы не работают▀▀▀ L▀03H ▌AT▐ ить ╢на "постоянных" (CMOS) часах реального ╖и │: CH,CL = часы,минуты в Зе BCD DH = секунды в Зе BCD DL = 1 жопции "единиц светового дня"▀▀▀ L▀04H ▌AT▐ лу из "постоянных" (CMOS) часов реального ╖и о: CH = столетие в Зе BCD (Eмер: CX = 1987H = 1987) CL = год в Зе BCD DH = месяц в Зе BCD (Eмер: DX = 0312H = 12-е марта) DL = день в Зе BCD о: CF = 1, ачасы не работают▀▀▀ L▀05H ▌AT▐ ить лу на "постоянных" (CMOS) часах реального ╖и │: CH,CL = столетие,год в Зе BCD DH,DL = месяц, день в Зе BCD▀▀▀ L▀06H ▌AT▐ ить сигнал часов реального ╖и. В нное ╢░ется Lьская Aа по ╛у Fя ┌4aH. Лишь один сигнал └╔ен в Ный момент ╖и. │: CH,CL = часы,минуты в Зе BCD DH = секунды в Зе BCD о: CF = 1, ачасы не работают Фсигнал уже ╔ен▀▀▀ L▀07H ▌AT▐ сбросить сигнал часов реального ╖и. Oет вам отменить один сигнал Zкой другого.P─ "а _CMOS ме ·(0:056c)  ╙-·  5i ╒={┌1bH: Fе с Лыт ╛(0:006c) берется, И·распознает нажатие Ки Ё-°.┌1bH [оzльно ет на IRET, но эет его на локальнуюAу, Вая взводит внутренний э. э╢от ╖и Bяетт и кует в )ии с кующим 8ом mки Fй.См. эFn 33H и ┌23H о том, Мэnет Ё-°.в pи мх ·(0:0471) взводится E[ом распознавании нажатияЁ-°, но он ниИне сбрасывается, авы не сделаете сами. Вые Оовать т в родительском ?е, fить, былли порожденный ?снят  Ё-°.P─=  ╙-· = ВВ={┌1cH: Lьское Fе по таймерут ╛(0:0070) ·берет по Ному тику аппаратных часов (Ные 55миллисекунд; Eблизительно 18.2 раз в секунду). [оzльно он ет наIRET, но └Хен Lьской Aой, ╩оватьфоновую Aу Lя, базирующуюся на таймере.Поскольку Aа ┌1cH пяется во ╢низкоуровневого аппаратногоFя, вы ены помнить, 0а еще не сбросила Длер Fйи потому другие аппаратные Fя, в том числе Fе от Лы, небудут происходить Eработе ┌1cH (т.е. вы не Mите ┐а Lя).├о popup-Aпредпочитают перехватывать ╛┌08H , ░ть[оzльный ╛, а Чуже пять iи, зависящие от ╖и,Iтого М·закончит свою обслугу.См. ┌08H насчет предложений и рекомендаций.P─=  ╙-·  Е  ╒ ╣={┌1dH: тель ╗\овт ╛(0:0074) ет на совокупность ╗\ов, ОуемыхFем ┌10H жки 9ов ╗Длера и vыхЦй мх ·EТации 8а ╗.~*ть RAM-6ную ╝ю й  ы и модифицировать \ы,Хить работу vых ных 8ов. {, им способомЖа э"╓" сдвигает влево Фвправо.См.  у \ов ╗ по поводу "ы этих \ов.P─=  ╙-·  К░={┌1eH: тель \ов иетыт ╛(0:0078) ет на  у \ов иеты, Вую 2наяслужба ·┌13H Оует ж=х iй с иетами.В эту  у │ят ие Ця, М"head-settle time" и "step rate time",оказывающие огромное влияние на скорость iй ┐а-▓а иеты.~*ть RAM-6ную ╝ю й  ы и модифицировать vые ее\ы, Хить отдельные детали iй с иетами. э*етмодифицированную ╝ю й  ы жулучшения производительности иет.$но, но э╕ет нормальные (более медленные) Ця, И╣щает е Eкладной Aе.См.  у \ов иеты о "е й  ы.P─=  ╙-· %├(Е=({)┌1fH: тель них 1овт ╛(0:007c) ет на  у, fяющую изображения старших 1281ов (Зы ■128-255). Ее Оует ╙-·, И▓ит на 1ы в ном (с ╞овой разверткой) 8е.EЩе 0ы т тель ется на F000:0, старшие128 1ов в ном 8е выдаются Мслучайный "мусор". Жа э3.x "GrafTabl" Ооваться жЭзки  ы старших 128 1ов и)ующей переки данного ╛а.Вы е *ть вашу собственную RAM-6ную  у, {, пре-доставить курсив жграфики.  а состоит из 128 групп по 8 ╟в группе.Ный ╟представляет 8 точек по горизонтали, Eчем [ый ╟отвечаетверхней #е точек, составляющих изображение 1а. {, eие1а "Л" могло бы └.им: ╓7┬6┬5┬4┬3┬2┬1┬0╖ -ение_в_ е + 0: ║ ■ ■ ■ ■ ■ ■ ║ = 010 = 7e hex ═╗ -ение_в_ е + 1: ║ ■ ■ ■ ■ ║ = 00100 = 3c hex ║ -ение_в_ е + 2: ║ ■ ■ ■ ■ ║ = 01101100 = 6c hex ║ -ение_в_ е + 3: ║ ■ ■ ■ ■ ║ = 01101100 = 6c hex ╠═ ═╗ -ение_в_ е + 4: ║ ■ ■ ■ ■ ║ = 01101100 = 6c hex ║ ║ -ение_в_ е + 5: ║ ■ ■ ■ ■ ║ = 01101100 = 6c hex ║ ║ -ение_в_ е + 6: ║■ ■ ■ ■ ■ ║ = 11001110 = ce hex ║ ║ -ение_в_ е + 7: ║ ║ = 0 = 00 hex ═╝ ║ ╙─┴─┴─┴─┴─┴─┴─┴─╜ ║0 ╔═╝0  ╔═╩ ═╗8-╟овая Hость: 7еH,3cH,6cH,6cH,6cH,6cH,ceH,00H стояла бы в е по -ению, )ующему 1у "Л". МЗ■буквы 'Л'равен 139, а  а yется ж1а с Зом 128, ┬12-я группаиз 8 ╟(-ение - 88 ╟от zла  ы).Ье: Младшие 128 1ов хранятся в ╙- е по ╩у f000:fa6e. не но в документации, но, похоже, т ╩остается постоянным во ╡х IBM-╝ях ╙. т ╩жестко заЗирован в Зах Aы ┌10H, вы не е Оовать свою  у жмладших 128 1ов (ау вас не ф , Вый Oет переfять весь набор 1ов).P─ ┌10H5  ╙-· 'ЩЪ9аЫЬ9бд│9вм9гж▓й9 uезЮк9 ╡ Я л9 Э н ╗9 ╣п ║9─░╜9╕▒╝9 Ж  {4 B тель их ┼ов эи ·┌$─ э%─┐│ ╒Префикс прогр. 4а kя ┘инф. об . ││ с┼упр. ом ╚ы а Общий ┘40H/60H ││ EPB ┼\ов EXEC ╢и ла а Общий ┘41H/61H ││ BPB ┼\ов · Общий ┘42H/62H ││ Юок а ││ Зы `э Юок Ъса  а т ││ Юок а EXE ╚а ││ ┼Пи $ы Слово состояния . jе э ││ ┼Пи иа aи ба . ┼упр. ^ю │└N─┘┌#─ ·%─┐│ Гой 3 и %а Лы Табл. ╗\ов ││  а >ов иа oе (┌11H) ф pи мх ││ Табл. \ов иеты CMOS "а _ ╚ы а ││ Табл. парам. ого иа ╙-Scan схема ┼а 8ы ╗ │└N─┘  э  · Темы помощи Общий индекс  2 ╡=hGiHj8 ╡-ЫF" '('M''x='Ш(Префикс Aного 4а (╒)ИAа yет пение, DS:0 и ES:0 ют на zло ╒й Aы. Пя ╒Oет выделить имена ов и опции из #иЖ, узнать объем вной _, fить jе и т.д.-. за +имое▀ ▀ D▀ ┌─┐ +0 2 │┌20H│ EXE-Aы могут делать сюда JMP ФRET жоа ├───┴───┤ +2 2 │MemTop │ вершина вной _0ы в ]ах ├───┼───┘ +4 1 │ │ (7ируется) ├───┼─┬─┐ +5 5 │CALL -. 4│ FAR CALL к диспетчеру  й э └───┼───┴───┼───┴───┘ +6 │ Avail │ вные ╟ы в Aном 4е ┌───┴───┼───┼───┐ (жа COM)+0aH 4 │-. 4│ ╩Яения. См. ┌22H ├───┴───┼───┴───┤+0eH 4 │-. 4│ ╩mки Ё-°. См. ┌23H ├───┴───┼───┴───┤+12H 4 │-. 4│ mчик критич. `. См. ┌24H ├───┴───┴─┴ ─ ─┐+16H 16H │ 7ная pь э │ ├───┴───┼───┴───┴ ─ ─┴───┘+2cH 2 │EnvSeg │ 4ный ╩jя э ├───┴───┴─ ─ ─┐+2eH 2eH │ 7ная pь э │ ├───┴───┴───┴───┴ ─ ─┴───┤+5cH 10H │ атир. обл. парам.1 │ Мв сж1-го \а Жы ├───┴───┴───┴───┴ ─ ─┴───┤+6cH 14H │ атир. обл. парам.2 │ Мв сж2-го \а Жы ├───┼───┴───┴───┴ ─ ─┴───┘+80H 1 │len│ за pи UPA (с ╩а 81H) ├───┴ ─ ─ ─┐ же -ение ой ь+81H 7fH │ неатир. обл. парам.│ 1ы из Жной #и э └───┴───┴───┴───┴ ─ ─┴───┘ (исключая директивы Vения)100H# <префикса Aного 4аP─эFn 26H *ть ╒ 4bH EXEC Щи Яение ие ┼и / ЬE │D │Eu1 @ "а а kя-. за +имое▀ ▀ D▀ ┌─┐ +0 8 │'F' 'I' 'L' 'E' 'N' 'A' 'M' 'E'│ дополнено справа пробелами ├───┴───┴───┼───┴───┴───┴───┴───┘ +8 3 │'E' 'X' 'T'│ дополнено справа пробелами ├───┼───┼───┘+0bH 1 │atr│ ╚а ├───┴─ ─ ─ ─┐+0cH 0aH │ 7 │ ├───┴───┼───┴ ─ ─ ┴───┘+16H 2 │ time │ ╢*ния/модификации в ате filetime ├───┴───┤+18H 2 │ date │ ла *ния/модификации в ате filetime ├───┴───┤+1aH 2 │ClstrNo│ rzльного Йа мх (связь с т) ├───┴───┴─┐+1cH 4 │ <а │ <а в ╟ах └───┴───┴───┴───┘+20H+ <а kяP─эFn 11H Найти 1-й  с Главное меню  э  ЬG│/-Ь0+aB0 1┼я ом (с)-. за +имое▀ ▀ D▀ ┌───┐ ═ ═ ═ ═ ═ ═ ═ ═ ═ ═ ═╗ -7 1 │ffH│ :ения с ║ ├───┴─┐ ║ -6 5 │ 7э │ ╠═ в :енном с ├───┼───┴───┴───┴───┴───┘ ║ ▀ -1 1 │ │ ╚а ║ └───┘ ═ ═ ═ ═ ═ ═ ═ ═ ═ ═ ═╝ ┌───┐ +0 1 │Drv│ ID иа (до bтия: 0=умалч.,1=A,etc; I: 0=A,1=B,etc.) ├───┴─┐ +1 8 │'F' 'I' 'L' 'E' 'N' 'A' 'M' 'E'│ Уа. Выравнено влево, справа ├───┴───┴───┼───┴───┴───┴───┴───┘ дополнено пробелами +9 3 │'E' 'X' 'T'│ :ение имени. Выравнено влево, ├───┴───┼───┘ справа дополнено пробелами+0cH 2 │CurBlk │ ий r┼а ├───┴───┤+0eH 2 │RecSize│ <Аой Ыи (╟) ├───┴───┼───┬───┐+10H 4 │file size │ за а (младшее [ым) ├─┼───┴───┘+14H 2 │ date │ ла модификации, ат filetime ├───┴───┴─┐+16H 0aH │ Шная pь э │ ├───┴───┼───┴───┴───┴───┴───┴───┴───┴───┘+20H 2 │CurRec │ отqьный rЫи в ┼е (0-7fH) ├───┴───┴───┬ ─ ┐+21H 4 │R√omRec | | относ. rЫи в е (жR√om-ов) └───┴───┴───┴ ─ ┘ (Iдний ╟Оуется E<е25H за bтого с Ыи, меньшем 64)Ья: Zbтием а вы ены Gить поле Drv и 11 ╟имени а и его :ения (Eмер: db 0,'MYFILE TXT'), и оставить место жтого,  эзаполнила остальные поля. 'Неbтый' с- [ые 12 ╟(Drv, Filename, Ext) плюс место ж остальных полей. В 'bтом' состальные поля заполнены. аполе Drv было нулевым, эзаполняет его rом иа жего а (0=A, 1=B, и т.д.). ╡ , Вые Eнимают с, Eнимают же :енный с. ╩ состается тем же; ас-7 +ит 0ffH, с- :енный. Оуйте :енный сжспецификации ╚а а , Вый вы bваете, *ете, переименовываете Фищете с помощью с- й.P─ Традиционный с-cй ┐-▓  э Ъ PE<EbB  ╚а vые  этребуют в качестве \а ╚а. ╚- один ╟╞овых ов, связанный с Ным ом и находящийся в е kя жа. В ╚е eы .ие ╞ы:╓7┬6┬5┬4┬3┬2┬1┬0╖║ │a│d│v│s│h│r║╙─┴─┴╥┴╥┴╥┴╥┴╥┴╥╜ ╞2 маска ║ ║ ║ ║ ║ ╚═ 0: 1=е (нельзя обновлять Фудалять) (01H) ║ ║ ║ ║ ╚═══ 1: 1=спрятанный& (02H) ║ ║ ║ ╚═ 2: 1=0ный' (04H) ║ ║ ╚═ 3: 1=метка тома& (08H) ║ ╚ ═ 4: 1=подkя (10H) ╚ ═ 5: архив. 1=копия а НЕ *валась (20H) э11H и 4eH поиска в kи Oют ть один Фt╞ов ╚а (спрятанный, 0ный, kе, архив), авы организуетепоиск ов с любым из нных ╚ов (║ающий поиск). авы опустителюбой ╞, то , +ащий т ╞╚а, не ┬найден.{, авы хотите отыскивать ы kя, ~ть╚10H, найти ╡ы, ║ая kя. Чвы ены самиотбрасывать ╡Ыи, не являющиеся kями (у них ╞4=0).авы специфицируете ╚с ╞ом "метка тома", поиск ┬исключающим,т.е. ┬╣щена лишь Ыь с меткой тома (аесть).эFn 43H (CHMOD) Oет вам Хять ╞ы -я, спрятанного, сис-темного и архивного а. Нельзя Хить ╞kя, но ~║ить Фудалить другие ╞ы ╚а kя──просто ▒ите Fn 43H , специфицировав╚со ╡ми требуемыми ╞ами жkя, исключая ╞4.P─  овой 0ы)  э ц8JM1Щd6Ш┼я ^ю (MCB)- НЕДОКУМЕНТИРОВАННЫЙ ий ┼, Вый эОует E;ении, модификации и освобождении ┼ов 0ной _.-. за +имое▀ ▀ D▀ ┌───┐ ┌── 'M'(4dH) - за этим ┼ом есть еще ┼и +0 1 │Тип├──┴── 'Z'(5aH) - мй ┼является Iдним ├───┴───┐ +1 2 │Владелец ]владельца (жFreeMem); 0 = владеет собой сам ├───┴───┤ +3 2 │<│ ]ов в м ┼е ;ения ├───┴───┴─ ─ ─┐ +5 0bH │Шо │ └───┴───┴───┴───┴ ─ ┴───┘+10H ? ┼_yется здесь и имеет зу (<*10H) ╟. ]по му ╩у ╣щает  я 48H AllocMem.Ья:  ┼и _┤выравнены на границу ]а ("4┼а")  ┼и M-типа: .ий ┼находится по (4_┼а+<):0  ┼и Z-типа: (4_┼а+<):0 = Е_(намек: a000H=640K)  I 4bH Exec, Z-┼yется с ( ╒-1):0 нового ?аP─  я ^ю э Индекс их ┼ов  фG:)╬/фF,2/фG/:'5╬ ?:B? @┼Пи $ы э3.x ┼Пи $ы ж э38H-. за +имое▀ ▀ D▀ ┌─┐ +0 2 │DateFmt│ ат лы: 0=USA(мдг), 1=Европа(дмг), 2=Япония(гмд) ├───┴───┴ ─┐ +2 5 │'Ь' 00H │ ■Z 1валюты ├───┴───┼───┴───┴───┘ +7 2 │',' 00H│ ■Z >итель тысяч ├───┴───┤ +9 2 │'.' 00H│ ■Z десятичный >итель ├───┴───┤+0bH 2 │'-' 00H│ ■Z >итель жлы ├───┴───┤+0dH 2 │':' 00H│ ■Z >итель ж╖и ├───┼───┘+0fH 1 │ 0 │ ат валюты: 0="$123.00"; 1="123.00$"; ├───┤ 2="$ 123.00"; 3="123.00 $"; 4="123$00"+10H 1 │ 2 │ зzщих десятичных цифр в валютных Цях ├───┤+11H 1 │ 1 │ ат ╖и: 0=12-часовые часы, 1=24-часовые часы ├───┼───┬─┐+12H 4 │ -. 4│ ╩▒а CaseMap (см. Ье) ├───┴───┼───┴───┘+16H 2 │',' 00H│ ■Z >итель списка мх ├───┴───┴─┐+18H 08H │ Шо │ └───┴───┴───┴───┴───┴───┴───┴───┘20H <┼а Пи $ы жэ3.xЬя: ▒CaseMap Oет назначить "веса ■" 1ам с Зами выше 80H. {, Жа эSORT Оует CaseMap, назначить 1ам Г,Д,Е,Ж,О,П и С те же веса ■, и 1у 'A', жцелей сортировки (в западном стандарте ■эти 1ы имеют другое ное представле- ние и )уют национальным вариациям буквы A. - Eм. перев.). ж=х национальных алфавитов !уют разные ▒ы CaseMaps. Оовать ╩▒а CaseMap: 1. Kе преобразуемый 1в 9AL 2. пите FAR CALL на нный ╩ 3. преобразованный 1╣щается в AL 4. Ця ╡х 9ов (исключая AL) (ены ┼Пи $ы различается в э3.x и э2.x (см. ниже). Убедитесь, вы знаете, Мая ╝я э╔на. См.  ю э30H э2.x ┼Пи $ы ж э38H-. за +имое▀ ▀ D▀ ┌─┐ +0 2 │DateFmt│ ат лы: 0=USA(мдг), 1=Европа(дмг), 2=Япония(гмд) ├───┴ ─ ┤ +2 ? │'Ь' 00H│ ■Z 1валюты (Xой зы) ├───┴ ─ ┤ +? ? │',' 00H│ ■Z >итель тысяч ├───┴ ─ ┤ +? ? │'.' 00H│ ■Z десятичный >итель ├───┴ ─ ┴ ─ ─┐ +? ? │ Шо │ └───┴ ─ ┴ ─ ┴───┴───┘20H$ <┼а Пи $ы э2.xP─ я э38H (Пя $ы)  э !цB4>н5 ж$"ж#$о+4B+ ,Схема ┼а Пи иат ┼Пи ируется НЕДОКУМЕНТИРОВАННОЙ  ей э32H.╡сведения, +ащиеся здесь, ~Mить путем я Гого 3аи ▒а ряда других  й эс vыми вычислениями, но ┼Пиудобен тем, он +ит ╡ме вместе. единственный ▒, Вый╣щает ╩Юка ба а.-. за +имое▀ ▀ C▀ ┌───┐ +0 1 │drv│ rиа (0=A, 1=B и т.д.) ├───┤ +1 1 │ │ rсуба из Юка а ├───┴───┐ +2 2 │ │ SectorSize: <3а в ╟ах ├───┼───┘ +4 1 │ │ 3ов на Й-1 (максим. 3в Йе) ├───┤ +5 1 │ │ сдвиг Йа в 3(Й= 2№ 3ов) ├───┴───┐ +6 2 │BootSiz│ 7ных 3ов (Гые,zло Гого огл) ├───┼───┘ +8 1 │ │  т ├───┴───┐ +9 2 │MaxDir │ макс. ов в Гом kи ├───┴───┤+0bH 2 │ыSec│ r3а жЙа #2 (1-й Ймх) ├───┴───┤+0dH 2 │HiClust│ ╡го Йов +2 (наивысший rЙа) ├───┼───┘+0fH 1 │ │ FatSize: 3ов, занимаемое одной т ├───┴───┐+10H 2 │RootSec│ # 3а zла Гого kя ├───┴───┼─┐+12H 4 │ -. 4│ ╩Юка а ├───┼───┴───┴───┘+16H 1 │ │ ╟йа qя ├───┤+17H 1 │ │ ва: 0, абыл вк у ├───┴───┬─┐+18H 4 │ -. 4│ ╩.его ┼а Пи иа └───┴───┴───┴───┘ (0fH, а┼- Iдний)P─эFn 32H Пя иа'  э FFB Пя ┘об еvые Pи  44H (┘) Оуют ую "у 9а DX: 1 1 1 1 1 1 ╔ ═╦═ 0-5: а╞7=0, ID иа: 0=A, 1=B и т.д.╓5┬4┬3┬2┬1┬0┬9┬8╥7┬6┬5┬4┬3┬2┬1┬0╖║ │I│ 7 ║d│e│b│ │C│N│O│I║╙─┴╥┴─┴─┴─┴─┴─┴─╨╥┴╥┴╥┴─┴╥┴╥┴╥┴╥╜ ╞! маска ║ ║ ║ ║ ║ ║ ║ ╚═ 0: 1= консольное │ное . (DX & 0001H) ║ ║ ║ ║ ║ ║ ╚═══ 1: 1= консольное оное . (DX & 0002H) ║ ║ ║ ║ ║ ╚═ 2: 1= нулевое о (DX & 0004H) ║ ║ ║ ║ ╚═ 3: 1= часы (DX & 0008H) ║ ║ ║ ╚ ═ 5: 1= двоичный 8; 0=■ (DX & 0020H) ║ ║ ╚ ═ 6: 1= sEOF; 0=EOF E┐е (DX & 0040H) ║ ╚═ 7: 1= о; 0=  (DX & 0080H) ╚═ 14: 1= #и ┘Eняты (DX & 4000H)' 0= #и ┘нельзя mатьP─эFn 44H ┘1  э  =F6p6м,и0и=м9=н=MК_pcFBc d\ы обобщенного ┘(CL=40H,60H)Эта "а Оуется в э3.2+ Generic ┘( я 44H Pя 0dH,ECL=40H Ф60H──ль/Уст. \ы а) и бами ,Rивающими обобщенный ┘.-. за +имое▀ ▀ C▀ ┌───┐ +0 1 │ │ 'ые   ├───┤ +1 1 │ │ Тип а (╣щает б) ├───┴───┐ +2 2 │ │ ╚ы а (╣щает б) ├───┴───┤ +4 2 │ │  ов (╣щает б) ├───┼───┘ +6 1 │ │ Тип qя ├───┴ ─ ┬ ─ ┬───┐ +7 1fH │ │ DeviceBPB То же, в BPB +12H ╟(см. ниже) ├───┴ ─ ┴ ─ ┴───┤+28H ? │ │ "а гки (Xой зы. См. ниже) └ ─ ┴ ─ ┴ ─ ┴ ─ ┘┌─┐│ 'ые  │ ╞овое поле. жЗа кия 60H (ль \ы уст-└─┘ ройства) e╞0: ╞0=1 озzет извлечь BPB в ате Ъса а 02H (Build BPB) 0 - извлечь ый BPB (ленный  Уст. Парам. .) жЗа кия 40H (Уст. \ы .) eы три ╞овых поля: ╓7┬6┬5┬4┬3┬2┬1┬0╖ ║0 0 0 0 0│ │ │ ║ ╙─┴─┴─┴─┴─┴╥┴╥┴╥╜ ╞ ║ ║ ╚═ 0: 1=ль схему DeviceBPB в Ъсах Build BPB ║ ║ 0=Оовать DeviceBPB из го пакета Ме ║ ╚═══ 1: 1=игнорировать т пакет, исключая "у гки ╚═ 2: 1=╡3ы на гке одного <а┌─┐│ Тип а │ 00 = 320/360K 5-дюймовый и 05 = ый и└─┘ 01 = 1.2M 5-дюймовый и 06 = лента 02 = 720K 3-дюймовый и 07 = иначе 03 = 8-дюймовый одинарной плотности 04 = 8-дюймовый двойной плотности┌─┐│ ╚а │ ╞овое поле, в Вом eы два ╞а:└─┘ ╓7┬6┬5┬4┬3┬2┬1┬0╖ ║0 0 0 0 0 0│ │ ║ ╙─┴─┴─┴─┴─┴─┴╥┴╥╜ ╞ ║ ╚═ 0: 1=несъемный qь; 0=съемный qь ╚═══ 1: 1=iя changeline Rивается; 0=иначе┌─┐│  ов │ ╣щается максимальное  ов, Rиваемое└─┘ физическим ом независимо от типа его qя.┌─┐│ Тип qя │ задает тип qя ж, Rивающих =е ти-└─┘ вы qей. {, 1.2M .: 0=1.M и; 1=360K и.┌ ─┐│ DeviceBPB │ 31-╟овая под"а, описанная ниже:└ ─┘-. за +имое▀ ▀ C▀ ┌─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─┐ +0 0dH │ lый BPB ── ой же, МeжГого 3а │ ├───┴ ─ ┼ ─ ┴ ─ ┴ ─ ┼ ─ ┴ ─ ┴ ─ ┴ ─ ┴ ─ ┴ ─ ┴ ─ ┴ ─ ┴ ─ ┴─┘+0dH 2 │TrkSect│ 3ов на гку ( ) ├───┴───┤+0fH 2 │heads │ головок (поверхностей) на е ├───┴───┼─┐+11H 4 │hidden sectors │ 3ов, не Оуемых бом (>ение) ├───┴───┴───┴───┤+15H 4 │ 7ируется │ ├───┴───┴───┴───┴─┐+19H 6 │ 7ируется │ └───┴───┴───┴───┴───┴───┘ 1fH за ┼а DeviceBPB (31 ╟)┌─┐│ Схема гки │ поле Xой зы, описывающее физическую "у секто-└─┘ ров на гке иа. См. же Fе ┌13H Q. 05H.-. за +имое▀ ▀ C▀ ┌─┐ +0 02H │SectCnt│ (N) 3ов на гку ( ) ({, 0fH) ├───┴───┼─┐ +2 4 │Sec1no │Sec2siz│ r3а, <3а (напр., DW 1,200H) ├───┴───┼───┴───┤ +6 4 │Sec2no │Sec2siz│ r3а, <3а (напр., DW 2,200H) ├───┴───┼───┴───┤ : ├───┴───┼───┴───┤ +? 4 │SecNno │SecNsiz│ r3а, <3а (напр., DW 0fH,200H) └───┴───┴───┴───┘Ья: ален ╞2 'ых  й, <ы ╡х 3ов ены └одинаковыми. бы эне Rивают  у "ы гки ж Ного Аого а. И╚ы qя Хяются, uо Оовать ▒┘Уст. \ы а.P─эFn 44H ┘1  э =FFB \ы обобщенного ┘(CL=41H,61H)Эта "а Оуется в э3.2+ Generic ┘( я 44H Q. 0dH, ECL=41H ФCL=61H──/Sгку Аого а).-. за +имое▀ ▀ C▀ ┌───┐ +0 1 │ 0 │ 'ые  (┤0) ├───┴───┐ +1 2 │head │ головка я/Ыи ├───┴───┤ +3 2 │track │ гка ( ) я/Ыи ├───┴───┤ +5 2 │sector │ zльный 3(от 0, т.е. 31=0, 2=1,...) ├───┴───┤ +7 2 │SectCnt│ счетчик 3ов (от 0; 8 ж9-3ной гки) ├───┴───┴─┐ +9 1fH │ -. 4│ ╩Zачи: ╩┴а Lя. └───┴───┴───┴───┘P─эFn 44H ┘1  э =F8бFB \ы обобщенного ┘(CL=42H,62H)Эта "а Оуется в э3.2+ Generic ┘( я 44H Q. 0dH, ECL=42H ФCL=62H──атировать/Bить гку Аого а).-. за +имое▀ ▀ C▀ ┌───┐ +0 1 │ │ 'ые  (см. ниже) ├───┴───┐ +1 2 │head │ головка жатирования/╜и ├───┴───┤ +3 2 │track │ гка ( ) жатирования/╜и └───┴───┘┌─┐│ 'ые  │ ╞овое поле. e╞0:└─┘E│е: ╞0=0: атировать гку ╞0=1: выяснить, Rиваются ли неlая "а гкиEое: ╞0=0: неlый ат гки Rивается, и поле схемы гки из  Set Parms (З40H) верно. См. Generic ┘40H/60H ╞0=1: неlые "ы гек не RиваютсяP─эFn 44H ┘1  э  /M╡EЩ* Ы╡.Щ/M*M3* B* +┼\ов EXEC (Exec Parameter Block - EPB) ┼\ов EXEC жэFn 4bH (EAL=0)-. за +имое▀ ▀ C▀ ┌─┐ +0 2 │ │ 4среды жпорождаемого (0=наследовать ий) ├───┴───┴─┐ +2 4 │ -. 4│ ╩Жной #и жпомещения в ╒+ 80H ├───┴───┼───┴───┤ +6 4 │ -. 4│ ╩┼а сжпомещения в ╒+ 5cH ├───┴───┼───┴───┤ +0ah 4 │ -. 4│ ╩┼а сжпомещения в ╒+ 6cH └───┴───┴───┴───┘ 0eH за ┼а EPB жEXEC EAL=0Ья: подготовьте среду и ите EPB+0 на ее ](ФKе 0 в EPB+00, заставить ░емый ?унаследовать ую среду) сируйте Жную #у Lstring, Zаваемую в ▒е. аона не тре- буется, она ена +ать: 00H 0dH (См. ╒-ение 80H) ите EPB+2 на -ение и 4й Жной #иа┼и сне нужны (МE▒е Ў.COM), вы е игнорировать.ие шаги. а░ется  я, требующая с(ая МFORMAT.COM):  подготовьте два неbтых сжZачи ░емому ?у  Kе в EPB+6 -ение и 4[ого с  Kе в EPB+0aH -ение и 4второго с ┼\ов EXEC жэFn 4bH (EAL=3)-. за +имое▀ ▀ D▀ ┌─┐ +0 2 │ │ 4, в Вый ┬Эжен  ├───┴───┤ +2 4 │ │ фактор Wения жкорректировки 4ных ссылок └───┴───┘ 04H за ┼а EPB жEXEC EAL=3P─эFn 4bH EXEC$ Главное меню  э .+M -Щ(-(?6ЩFЩOMOxBO P"а Юка а EXE ы &ого EXE-ата yются с ого Юка.-. за +имое▀ ▀ C▀ ┌─┐ +0 2 │4Dh 5aH│ "подпись" а .EXE ('MZ') ├───┴───┤ +2 2 │PartPag│ за неполной Iдней $ицы (lо игнорируется) ├───┴───┤ +4 2 │PageCnt│ за образа в 512-╟овых $ицах, ║ая Юок ├───┴───┤ +6 2 │ReloCnt│ ов в  е Wения ├───┴───┤ +8 2 │HdrSize│ за Юка в 16-╟овых ]ах ├───┴───┤+0aH 2 │MinMem │ минимум требуемой _за концом Aы (]ы) ├───┴───┤+0cH 2 │MaxMem │ максимум требуемой _за концом Aы (]ы) ├───┴───┤+0eH 2 │ReloSS │ 4ное -ение 4а стека (жки SS) ├───┴───┤+10H 2 │ExeSP │ Це 9а SP (теля стека) EЩе ├───┴───┤+12H 2 │ChkSum │ Дьная сумма (отрицательная сумма ╡х слов в е) ├───┴───┤+14H 2 │ExeIP │ Це 9а IP (теля Ж) EЩе ├───┴───┤+16H 2 │ReloCS │ 4ное -ение Зового 4а (жки CS) ├───┴───┤+18H 2 │TablOff│ -ение в е 1-го а Wения (часто 001cH) ├───┴───┤+1aH 2 │Overlay│ rоверлея (0 жглавного модуля) └───┴───┘1cH <атированной порции Юка EXE ┌─┬─┬ ─ ─ ┬─┬─┐  а Wения. zло+ ? 4*? │ -. 4│  │ -. 4│ по -ению [EXE+18H]. Имеет └───┴───┴───┴───┴ ─ ─ ┴───┴───┴───┴───┘ [EXE+6] 4-╟овых а.+ ? ? пропуск до границы ]а+ ? ? zло образа AыP─Поскольку EXE-└Эжен в любой 4, ╡абсолютные 4-ные ссылки (FAR CALL, далекие тели, ссылки типа MOV AX,ы_seg) ены└Eведены к ╩ам _, )ующим Эзке. Ниже Eведены шаги,Оуемые Aой Эзки э( я 4bH ) EЭзке а EXE:1. *ть ╒посредством  э26H2. про1cH ╟а EXE (атированную порцию Юка EXE) в локальную pь _3. fить <модуля = ( (PageCnt*512)-(HdrSize*16) ) - PartPag4. fить овое -ение Эжаемого модуля = (HdrSize * 16)5. выбрать 4ный ╩, START_SEG, жЭзки (lо ╒+ 10H)6. смодуль в pь _, yющуюся с ╩а START_SEG:07. LSEEK (уст. тель а) на zло  ы Wения (TablOff)8. жНого а Wения (ReloCnt): a. сМдва 16-╞овых слова (I_OFF,I_SEG) b. вычислить RELO_SEG=(START_SEG+I_SEG) (╩Wаемой ссылки) c. извлечь слово по ╩у RELO_SEG:I_OFF (проее Це) d. Eбавить START_SEG к му слову (пить Eвязку 4а) e. Kь 5ат обратно по его ╩у (RELO_SEG:I_OFF)9. ;ить ^жAы согласно MaxMem и MinMem10. Тировать 9ы и запустить Aу: a. ES = DS = ╒ b. AX = отражает корректность идентификаторов иов в Жной #е c. SS = START_SEG+ReloSS, SP = ExeSP d. CS = START_SEG+ReloCS, IP = ExeIP (Жы: PUSH seg; PUSH offset; RETF)Ье: Iдние добавления в ат EXE, особенно ╝и EXE-ов "CodeView" и "Windows", +ат дую Пю, ║енную в пимый . Эти добавления не отражены в й ╝и TECH █!.P─эFn 4bH EXEC Щи Яение A  э 9 з4 з"и=p"а Юка аДвоичный образ а ба а yется с й "ы. Во ╢ки ба поле Next_Device корректируется, отражая ║ение в цепь.-. за +имое▀ ▀ C▀ ┌─┬─┐ Next_Device: FAR ╩след. а в цепи +0 4 │ -. 4│ (-ение=0fH, аIдний б) ├───┴───┼───┴───┘ +4 2 │DevAttr│ ╞овые поля, составляющие ╚а ├───┴───┤ +6 2 │Stratgy│ -ение Aы а STRATEGY ├───┴───┤ +8 2 │Intrupt│ -ение Aы а ┌ERRUPT ├───┴───┴─┐+0aH 8 │'L' 'P' 'T' '1' 20H 20H 20H 20H│ дополненное пробелами У-ва └───┴───┴───┴───┴───┴───┴───┴───┘ (Фrсуба)P─эFn 32H ╚а Ъсы а бы   ж9и2иK!F $ж(и;ж;и=;p<╚аПоле DevAttr Юка а ет свойства а. 1 1 1 1 1 1╓5┬4┬3┬2┬1┬0┬9┬8╥7┬6┬5┬4┬3┬2┬1┬0╖║ │ │ │0│ │0 0 0 0│ │0 0│ │ │ │ ║╙╥┴╥┴╥┴─┴╥┴─┴─┴─╨─┴╥┴─┴─┴╥┴╥┴╥┴╥╜ ╞# маска ║ ║ ║ ║ ║ ║ ║ ║ ╚═ 0: 1=&ое │ное о (0001H) ║ ║ ║ ║ ║ ║ ║ ╚═══ 1: 1=&ое оное о (0002H) ║ ║ ║ ║ ║ ║ ╚═ 2: 1=&ое о NUL (0004H) ║ ║ ║ ║ ║ ╚═ 3: 1=часы (0008H) ║ ║ ║ ║ ╚ ═ 6: 1=Rивает Аие -ва (0040H) ║ ║ ║ ╚═ 11: 1=Rивает open/close/RM (0800H) ║ ║ ╚═ 13: 1=не-IBM блочное о (2000H) ║ ╚═ 14: 1=Rивает ┘ (4000H) ╚═ 15: 1=1ьное о; 0=блочное(8000H)Ья: ите &ые ╞ы в/в (0 и 1), авы заменяете бCON о NUL не └Vено (не заменяйте о NUL) ╞Аих (э3.2+) отражает Rку Ъсов а 17H и 18H (ль/Уст Логич ), Оуемых в реализации концепции "фантомных флоппи-иов" в бе а DRIVER.SYS ╞open/close/RM (э3.0+) отражает Rку Ъсов а ж съемных зависящих от qя (RM = Removable Media-related)  (от 0dH до 0fH), бблочного а оптимизировать локальную ┴изацию, а 1ьное о послать Тирующую Hость ╞а не-IBM кует на mку Ъса 'Build BPB' (02H) ╞┘отражает Rку утФт а, Оующих  ю э44H ╞1ьного а возкует на Ъсы ┐а и ▓а и fяет смысл поля 'Уа' в Юке а . ат ╞равен 0, о является блочным ом (lо иовод) ╞часов указывет на замещение а CLOCK$. CLOCK$ - 1ьное о, nющее Ъсы а на ┐и ▓зой ровно в 6 ╟. Ъс на ┐(ЗЖы 4) еен ╣тить 6 ╟, ющих ие ╢и лу. Ъс на ▓(ЗЖы 8) еен Eнимать 6 ╟, +ащих Ця часов и календаря. ат мх жCLOCK$ .ий: -. за +имое ▀ ▀ /▀ ┌─┐ +0 2 │ date │ дней, считая с 1 января 1980 ├───┼───┘ +2 1 │min│ ая минута (0-59) ├───┤ +3 1 │hrs│ ий час (0-24) ├───┤ +4 1 │sec│ ая секунда (0-59) ├───┤ +5 1 │hun│ ая сотая секунды (0-99) └───┘P─ Юок а Ъсы а бы   ?зB йй; v+м=$ v,й.о9й);о+?м'AмBзDuJй)Lо,Uл_ й*eк4qз7{з~кЖйBМF!ТзХFЫй!ез1йFлзлк=лpм"ы Ъсов Кмд Наименование Исп. █ Кмд Наименование Исп. э▀▀▀ ▀ ▀ █ ▀▀▀ ▀ ▀ ▀ 0 Тировать  C,B █ 0aH %▓а C 1 Дь qя B █ 0bH Сброс ▓а C 2 Построить BPB B █ 0cH ┘▓ C,B,I 3 ┘┐ C,B,I █ 0dH bть о C,B,R 3.0+ 4 ┐(с -ва) C,B █ 0eH Закрыть о C,B,R 3.0+ 5 Неразрушающий ┐ C █ 0fH Съемный qь B,R 3.0+ 6 %┐а C █ 13H Общий Ъс ┘ I 3.2 7 Сброс ┐а C █ 17H ль логич  C,B 3.2 8 ▓(Sна -во) C,B █ 18H Уст логич  C,B 3.2 9 ▓с ╜ей C,B █P▀Оов: C = бы 1ьных  ─┐ B = блочные а (lо иоводы) ╞═См. ╚-ва I = требуется Rка ┘ │ R = требуется Rка Open/Close/RM ─┘pь мх Ъса fяется "Зом Жы" (-ение 2 в Юке ). ┌─┐ │ Тировать │ ЗЖы а: 0-. за +имое└─┘▀ ▀ C▀ ┌3─┐ +0 0dH │ 13-╟овый Юок Ъса │ ├───┼───┴───┴───┴───┼───┴───┴───┴───┴───┴───┴───┴───┘ +0dH 1 │ │ о: единиц, eное этим (блочным) бом ├───┴───┬─┐ +0eH 4 │ -. 4│ о: ╩конца 6ного За ├───┴───┼───┴───┤ +12H 4 │ -. 4│ │: ╩#и ■Z из ї.SYS ├───┼───┴───┴───┘ о: ╩BPB ж(блочного) а +16H 1 │drv│ rиа (0=A, 1=B и т.д.) э3.0+ └───┘бТирует о и ╣щает ╩конца pи _,Вую он хочет оставить 6ной. yя с э3.0, -ение 12H +итDWORD-╩а, .его за Жой "DEVICE=" в е ї.SYS . Крометого, же yя с 3.0, -ение 16H +ит # иа.~Оовать  э01H-0cH во ╢Тации. ┌─┐ │ Дь qя │ ЗЖы а: 1-. за +имое└─┘▀ ▀ C▀ ┌3─┐ +0 0dH │ 13-╟овый Юок Ъса │ ├───┼───┴───┴───┴───┼───┴───┴───┴───┴───┴───┴───┴───┘ +0dH 1 │ │ │: ╟йа qя (эспрашивает об Хении) ├───┤ +0eH 1 │ │ о: 0ffH=qь Хился; 1=тот же; 0=не знаю ├───┴───┬─┐ +0fH 4 │ -. 4│ о: ╩предыдущего имени тома (■Z) └───┴───┴───┴───┘ (аqь Хился и Rивается RM) ┌─┐ │ Построить BPB │ ЗЖы а = 2-. за +имое└─┘▀ ▀ C▀ ┌3─┐ +0 0dH │ 13-╟овый Юок Ъса │ ├───┼───┴───┴───┴───┼───┴───┴───┴───┴───┴───┴───┴───┘ +0dH 1 │ │ │: ╟йа qя ├───┴───┬─┐ +0eH 4 │ -. 4│ │: ╩┴а (т30) ├───┴───┼───┴───┤ +12H 4 │ -. 4│ о: ╩BPB жго иа └───┴───┴───┴───┘беен ╣щать тель на BPB жей ленной иеты.ав ╚е а ║ен ╞не-IBM, то -ение 0eH ет на'junk'. аблочное о имеет IBM-ат, то -ение 0eH ет на[ый 3т(считанный ZЖой "Построить BPB"). ┌─┐ │ ┐Ф▓│ ЗЖы а: 3,4,8,9,0cH-. за +имое└─┘▀ ▀ C▀ ┌3─┐ +0 0dH │ 13-╟овый Юок а │ ├───┼───┴───┴───┴───┼───┴───┴───┴───┴───┴───┴───┴───┘ +0dH 1 │ │ │: ╟йа qя ├───┴───┬─┐ +0eH 4 │ -. 4│ │: ╩┴а Zачи мх ├───┴───┼───┴───┘ +12H 2 │Count │ │: счетчик ╟(3ов жблочного -ва) ├───┴───┤ +14H 2 │Sector │ │: zльный r3а (блочные -ва) ├───┴───┼─┐ +16H 4 │ -. 4│ о: ╩имени тома (■Z) └───┴───┴───┴───┘ (E╣те aи а = 0fH)По Жам ┐а (3,4) о ено Zать Count ╟(3ов жблочного а) в ^, yя с ╩а, нного по -ению 0eH.По Жам ▓а (8,9,0cH) ме Zаются на о. ┌!─┐ │ Неразрушающий ┐без ожидания │ ЗЖы: 5-. за +имое└!─┘▀ ▀ C▀ ┌3─┐ +0 0dH │ 13-╟овый Юок (1ьные ) │ ├───┼───┴───┴───┴───┼───┴───┴───┴───┴───┴───┴───┴───┘ +0dH 1 │ │ о: Це .его ╟а в очереди └───┘┌─┐│ %│ ЗЖы а = 6, 0aH└─┘ Эти Жы требуют ить Слово состояния а .жЪсов %а ┐а (кмд 6), сбрасывайте ╞занятости в 0, аестьждущий 1в ┴е. йте его в 1, аЖа ┐а потребуеткительного ожидания ╟а ({, нажатия Ки).жЪсов %а ▓а (кмд 0aH), сбрасывайте ╞занятости, ав иймомент sждущего Ъса и очередной ▓┬направлен непосредственно нао. йте его в 1, апредыдущий Ъс еще не закончен.┌ ─┐│ Пропуск │ ЗЖы а: 7, 0bH└ ─┘ Эти Жы заставляют бочистить │ные Фоные ┴а.┌─┐│ bть/Закрыть │ ЗЖы а: 0dH, 0eH└─┘ Эти Жы Оуются, И╚а етRку "Open/Close/Removable Media".Блочные а могут Оовать эти Жы жя локальной буфе-ризацией. Ъс "bть" (0dH) пяется Ebтии, а Ъс "Закрыть" -Eзакрытии Ного а. Oет бу отслеживать моменты, И~удалить иету из а и/Фсбросить ┴а.1ьные а могут Оовать эти Жы жпосылки на о({, C) #и Тации Фсброса в zльное состояние.┌─┐│ Съемный qь │ ЗЖы а: 0fH└─┘ Оуется жс ╚ом а ,ющим Rку "Open/Close/RM". беен сообщить э, Rиваетли он съемные qи. Он ╣щает Пю в ╞е занятости Слова состояния а занят (╞9) = 0 озzет, qь съемный' 1 озzет, qь НЕ съемный ┌ ─┐ │ Общий ┘│ ЗЖы а: 13H-. за +имое└ ─┘▀ ▀ C▀ ┌3─┐ +0 0dH │ 13-╟овый Юок Ъса │ ├───┼───┴───┴───┴───┼───┴───┴───┴───┴───┴───┴───┴───┘ +0dH 1 │ │ │: r  ├───┤ +0eH 1 │ │ │: rPи ├───┴───┐ +0fH 4 │ SI │ │: Це SI в Ъсе  44H ┘ ├───┴───┤ +11H 4 │ DI │ │: Це, Zанное в DI ├───┴───┼─┐ +15H 4 │ -. 4│ │: ╩пакета мх ┘ └───┴───┴───┴───┘бы э3.2+, ющие в ╚е а Rку ┘, еныnть т Ъс. Он предназначен жстандартизации интерфейса с раз-личными типами иов  посредство ба Аих иов DRIVER.SYS.См.  ю э44H (┘) на предмет )ующей Пи. ┌─┐ │ ль/Уст логич │ ЗЖы а: 17H,18H-. за +имое└─┘▀ ▀ C▀ ┌3─┐ +0 0dH │ 13-╟овый Юок Ъса │ ├───┼───┴───┴───┴───┼───┴───┴───┴───┴───┴───┴───┴───┘ +0dH 1 │ │ │: Зединицы; о: Iднее ╔ное  ├───┤ +0eH 1 │ │ │: ЗЖы ├───┴───┐ +0fH 4 │╧│ (эTech Ref не сообщает, здесь хранится) ├───┴───┼─┐ +11H 4 │ -. 4│ (7) └───┴───┴───┴───┘бы э3.2+, ющие в ╚е а Rку ┘, еныnть т Ъс.По Ъсу 18H беен Kь идентификатор (ID) а по -е-нию 0dH (1=A, 2=B и т.д.). абnет единственное о, онеен ╣тить 0 в м поле. См.  ю э44H (┘), Q. 0eH и 0fH.P─ ╚а Слово состояния а бы  p и к'иЮок Ъса аНый Ъс к бу а сопровождается телем на "уЪса, Фпакет. Ный пакет Ъса yется им 13-╟овым Ю-ком. E│е в б, ES:BX ет на пакет с й "ой.-. за +имое▀ ▀ C▀ ┌───┐ +0 1 │len│ за пакета (║ая Юок и ме) ├───┤ +1 1 │unt│ rединицы (жблочных ) ├───┤ +2 1 │cmd│ ЗЖы (00-18H) - специфицирует кие ├───┴───┐ +3 2 │╧│ слово состояния а - заполняет б ├───┴───┴─┐ +5H 8 │ (7) │ ├───┴ ─ ┴ ─ ┴───┴───┼───┴───┴───┘+0dH ? │ ме │ ме атированы согласно Зу Жы └───┴ ─ ┴ ─ ┴───┴───┘ См. Ъсы о атах мх.  :й)л й>илжи*л<pСлово состояния а 1 1 1 1 1 1╓5┬4┬3┬2┬1┬0┬9┬8╥7┬6┬5┬4┬3┬2┬1┬0╖║e│7 │b│d║ Зaи ║ s = 16-╞овое слово (Юок, -ение 3)╙╥┴─┴─┴─┴─┴─┴╥┴╥╨─┴─┴─┴─┴─┴─┴─┴─╜ ╞! маска ║ ║ ║ ╚ ═╩═ 0-7: Зaи а (s & 00ffH) ║ ║ ╚═ 8: 1=готово (┤Eое) (s & 0100H) ║ ╚═ 9: 1=занято (Жы 6 и 0fH) (s & 0200H) ╚═ 15: 1=встретилась aа (s & 8000H)ба ┤╣щает в эслово состояния а. словорасположено по -ению 3 в Юке Ъса . Eнормальном Яении Ъ-са беен ить ╞"готово" и выйти  FAR RET.╞"занято" ется mчиком Ъса, Ион fяет невозмож-ность удовлетворения Ъса из-за того, физическое о занято преды-дущим Ъсом.  т ╞╣щается и другая Пя, ая М"очередь Лы непуста" Ф"qь съемный". См. Ъсы ╞"aа" ется, ИбMает непимый Ъс Фвстречает aу Eпопытке удовлетворить Ъс. Иустанавливется ╞aи, ╞ы 0-7 (╟по -ению 3 в Юке Ъса) еен └заполненЗом aи. См. aи на предмет списка Зов `.P─ Юок а Ъсы  aи  бы  .к2йкй2иFpaи бов Иба Mает некорректный Ъс Фвстречает aу во╢iи, он ет ╞aи в слове состояния а (╞15) и помещает Зaи в младшие 8 ╞(╟в Юке Ъса + 3).Ош. h █ Ош. h▀▀▀ ▀ █ ▀▀▀ ▀ 0 нарушение защиты Ыи █ 9 Ебумаги на Cе 1 неизвестная единица █ 0aH aа Ыи 2 о не готово █ 0bH aа я 3 неизвестная Жа █ 0cH общая aа 4 aа CRC █ 0dH (7) 5 xая за пакета Ъса █ 0eH (7) 6 aа поиска █ 0fH xая замена иа (э3.0+) 7 неизвестный qь █ 8 3не найден █P─ Слово состояния а Юок Ъса Ъсы  бы  *н$ u. Ъо.uн4 п3u=p┼\ов ·(·Parameter Block - BPB)- подмножество мх, +ащихся в Гом 3е . Ъс к бу'Построить BPB' требует, бзаполнил ┼по показанной ниже схеме.-. за +имое▀ ▀ C▀ ┌─┐ +0 2 │SectSiz│ ╟на 3 ├───┼───┘ +2 1 │ClustSiz 3ов на единицу респределения (Й) ├───┴───┐ +3 2 │ResSecs│ Гых и 7ных 3ов ├───┼───┘ +5 1 │FatCnt  т ├───┴───┐ +6 2 │RootSiz│ макс.32-╟овых ов в Гом kи ├───┴───┤ +8 2 │TotSecs│ общее 3ов на qе (>э) ├───┼───┘+0aH 1 │Media gь qя (то же, 1-й ╟т) ├───┴───┐+0bH 2 │FatSize│ 3ов в одной т └───┴───┘ 0dH за BPB = 13 ╟P─ Гой 3  я 32H  а >ов т бы   пE м$uо.uFм "k)#К$п(м4*ф&+ф .Ъ+.u/4./н26kE6k<4 <п <uC< ="а Гого 3аГой 3иа Ф>а иа еен иметь .ий ат.-. за +имое▀ ▀ C▀ ┌───┬───┬───┐ +0 3 │JMP│ xx xx │ NEAR-Tна ЗЭзки ├───┴───┴───┴─┐ +3 8 │'I' 'B' 'M' '3' '.' '2'│ OEM-Укомпании и ╝я 0ы ├───┴───┼───┴───┴───┴───┴───┴───┘+0bH 2 │SectSiz│ ╟на 3 ═ zло BPB ═╗ ├───┼───┘: ║+0dH 1 │ClustSiz 3ов на единицу ;ения (Й) ║ ├───┴───┐: ║+0eH 2 │ResSecs│ 7ных 3ов (3ов Z[ой т) ║ ├───┼───┘: ║+10H 1 │FatCnt  т' ║ ├───┴───┐: ║+11H 2 │RootSiz│ макс.32-╟овых ов Гого kя ║ ├───┴───┤: ║+13H 2 │TotSecs│ общее 3ов на qе (>э) ║ ├───┼───┘: ║+15H 1 │Media йqя (то же, 1-й ╟т) ║ ├───┴───┐: ║+16H 2 │FatSize│ 3ов в одной т  ═ ЕBPB ═╝ ├───┴───┤+18H 2 │TrkSecs│ 3ов на гку ( ) ├───┴───┤+1aH 2 │HeadCnt│ головок я/Ыи (поверхностей) ├───┴───┤+1bH 2 │HidnSec│ спрятанных 3ов (исп. в схемах >ения) └───┴───┘ 1eH <атированной порции Гого 3а zло За и мх ЭзкиЬя: Оуйте абсолютное е ┌25H (DX=0) жя го 3а. ИЛИ: - флоппи-ии: Гой 3= ·┌13H головка 0, гка 0, 31 - ые: читайте  у >ов жMения ·головки/гки/3а OEM-У+ать любые 8 ╟. Оно не Оуется э подмножество BPB Гого 3а Оуется бами  Iдние три поля "ы требуются, yя с э3.0 . Эти поля не требуются жбов в э2.0 Mить абсолютный r3а из rа Йа (считанный из поля ClustNo в е kя Фв цепи т), вы е Оовать недоку- ментированную  ю э32H ФпроГой 3и Eменить .ие улы: Гых_3ов = (RootSiz * 32) / SectSiz zло_мх = ResSecs + (FatSize * FatCnt) + Гых_3ов абс_3= zло_мх + ((cluster_no - 2) * ClustSiz) ите DX=абс_3Ziей я ┌25H ФЫи ┌26H . старые ые ии, требовавшие ленного (не Эжаемого) ба, могут +ать мусор в Гом 3е. В их случаях не !ует спосо- ба fить <Гого kя, <Йа, -ение тetc.P─эFn 32H  а >ов т  э .!4":4uмн/F% ф!н&! &4&u&н*&м/&pC& 'йqяэfяет одно╟овый З, Вый (иногда) ~Оовать жопреде-ления типа qя, Оуемого иовым ом. йqя(называемый же ╟ом тID) ~Mить:  МЦе, ╣щаемое  ями э1bH , 1cH и 32H  М[ый ╟т(Аий 31 э)  по -ению 0aH в BPB  по -ению 15H в Гом 3е (Аий 30 э)  в ┼е мх, Оуемом  ей э44H Q. 0dH (Общий ┘)Знач. Типы qя, eные в э3.2▀ F▀ ffH 2 стороны, 8 3ов на гку feH 1 сторона, 8 3ов на гку fdH 2 стороны, 9 3ов на гку fcH 1 сторона, 9 3ов на гку f9H 2 стороны, 15 3ов на гку f8H фиксированный и feH 8-дюйм (IBM 3740) 1 сторона, одинарная плотность, 26 3ов на гку feH 8-дюйм 2 стороны, двойная плотность, 26 3ов на гку fdH 8-дюйм (IBM 3740) 2 стороны, одинарная плотность, 26 3ов на гку╓7┬6┬5┬4┬3┬2┬1┬0╖║1 1 1 1 1│ │ │ ║ ╞овые и ╟а gя qя╙─┴─┴─┴─┴─┴╥┴╥┴╥╜ ∙ ║ ║ ╚═ 0: 1=2-стороннний; 0=не 2-сторонний ║ ╚═══ 1: 1=8 3ов; 0=не 8 3ов ╚═ 2: 1=съемный; 0=не съемныйМвидите, дексриптор qя ни инативен, ни надежен. РуководствоэTech Ref дает противоречивую Пю и советует не Оовать его.неплохой совет. {, Гой 3RAM-иа VDISK.SYS +итйqя, ющий 360K-╟овую иету (независимо от объемаRAM-иа). же, йqя 0f8H Оуется ж╡х ыхиов, он полезен в м смысле.P─ 1bH 32H т Гой 3 BPB бы   э 9КBКSКSС*Sнов иаСамый [ый 3ого иа +ит Главную Гую Ыь, ВаяЭжается в ^и пяется.Iдняя часть го 3а +ит  у >ов ── 4-ную  ус 16-╟овыми ами. й  ей манипулирует Aа FDISK (Фэкви-валентная утФта в иной iонной 0е).Во ╢Эзки ╙-·Эжает главную Гую Ыь и Zает управле-ние на ее З. т Зсчитывает  у >ов, fить >, по-меченный М╔ный. Чв ^считывается корректный Гой 3и пяется.-. за +имое▀ ▀ C▀ ┌─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─┐ +0 1beH │ ЗЭзки и пения Гого 3а ╔ного >а │ ├───┴ ─ ┴ ─ ┴ ─ ┴ ─ ┼ ─ ┴ ─ ┴ ─ ┴ ─ ┴ ─ ┴ ─ ┴ ─ ┴ ─ ┴ ─ ┴─┘+1beH 10H │ │ >а 1 (см. ниже) ├───┴ ─ ┴ ─ ┴ ─ ┴───┤+1ceH 10H │ │ >а 2 ├───┴ ─ ┴ ─ ┴ ─ ┴───┤+1deH 10H │ │ >а 3 ├───┴ ─ ┴ ─ ┴ ─ ┴───┤+1eeH 10H │ │ >а 4 ├───┴ ─ ┼ ─ ┴ ─ ┴───┘+1feH 2 │ 55 aa │ подпись  ы >ов (0aa55H) └───┴───┘ "а а >а D▀ ┌───┐ +0 1 │Boot Эзки: 0=не ╔ен, 80H = ╔ен ├───┼ +1 1 │Hd │ zло >а: rголовки ├───┼───┐ +2 2 │Sec Cyl│ zло >а: 3/ Гого 3а ├───┼───┘ +4 1 │Sys│ З0ы: 0=неизвестна, 1=э12-╞т, 4=16-╞ ├───┼ +5 1 │Hd │ Е>а: rголовки ├───┼───┐ +6 2 │Sec Cyl│ Е>а: 3/ Iднего 3а ├───┴───┼───┬───┐ +8 4 │ младш старш │ Отqьный rzльного 3а ├───┴───┼───┴───┤ +0cH 4 │ младш старш │ <(3ов) └───┴───┴───┴───┘ +10H zло .его а >а (Ф0aa55H жIдн.а)Ья:  Ця  а и 3а занимают 10 и 6 ╞)енно: 1 1 1 1 1 1 ╓5┬4┬3┬2┬1┬0┬9┬8╥7┬6┬5┬4┬3┬2┬1┬0╖ ║c c c c c c c c C c S s s s s s║ ╙─┴─┴─┴─┴─┴─┴─┴─╨─┴─┴─┴─┴─┴─┴─┴─╜ Они упорядочены , , Ивы Эжаете CX 16-╞овым Цем, оно готово ж▒а ┌13H жя нужной порции иа. им образом, Iя Главной Ыи Эзки в pь _'sec_buf', З CMP ўptr sect_buf[01beH],80H Bит, ╔ен ли [ый >, а З MOV CX,sect_buf[01c0H] Эзит CX ж▒а ┌13H жя Гого 3а >а #1.  Це "отqьного 3а" по -ению 08H в Ном >е эквива- лентно головке, 3у и  у zльного ╩а >а. Отqьный 30 совпадает с  ом 0, головкой 0, 3ом 1. Отqьный но- мер 3а Eрастает сzла по Ному 3у на головке, Чпо каж- дой головке и наЕпо Ному  у. Eменима ула: отн_сек = (#Цил * сек_на_цил * головок) + (#Гол * сек_на_цил) + (#Сек -1)  >ы yются с четного rа  а, за исключением [ого разде- ла, Вый yться с  а 0, головки 0, 3а 2 (поскольку 31 занят Главной Ыью Эзки).  ИГая Ыь >а Mает е, DS:SI ет на )ующий  ы >ов.P─ ┌13H (в/в иа) ┌19H (Эзка) Гой 3 Индекс упр. ┼ов ЦК6Ш  а \ов иетыЭта 10-╟овая "а известна же М"шBase Table." Она находится по╩у ╛а Fя ┌1eH (4-╟овый ╩в 0:0078). Эта  а зада-ет vые важные Xые жиет. Ее Тирует ╙-·,а эмодифицирует, улучшить производительность иет.-. за +имое▀ ▀ C▀ ┌─┬─┐ +0 1 │ | │ ╞ы 0-3: SRT (step rate time); ╞ы 4-7: head unload time ├─┴┬┤ +1 1 │ |│ ╞0: 1=исп.ю; ╞ы 2-7: head load time ├──┴┤ +2 1 │ │ motor wait (55-мс интервалов Zотключением мотора) ├───┤ +3 1 │ │ <3а (0=128, 1=256, 2=512, 3=1024) ├───┤ +4 1 │ │ EOT (Iдний 3на гке) ├───┤ +5 1 │ │ за промежутка жiй я/Ыи ├───┤ +6 1 │ │ DTL (ыTransfer Length) макс.за мх, ане задана ├───┤ +7 1 │ │ за промежутка жiи атирования ├───┤ +8 1 │ │ 1-заполнитель жатирования (lо 0f6H 'Ў') ├───┤ +9 1 │ │ head-settle time (в миллисекундах) ├───┤ +0aH 1 │ │ ╢Ща мотора (в 1/8-секундных интервалах) └───┘P─ ┌13H. Индекс их ┼ов у у ╜$К6$Ш% а \ов ого иаЭта 16-╟овая "а находится по ╩у ╛а Fя ┌41H4-╟овый ╩в 0:0104). \ы жвторого ого иа (аон есть)находятся по ╩у ╛а ┌46H. Эти  ы задают vые важные пере-менные жiй с ыми иами. ■XT■ Yи на плате Длера задают один из четырех типов  жНого ого иа. Во ╢Эзки ·ет ┌41H и ┌46H в )ии с состоянием этих Yей. ▌AT▐ ╛ы ┌41H и ┌46H ются согласно Цю "Тип ого иа" (Xая CMOS-_, Эжаемая Aой "Setup").-. за +имое▀ ▀ C▀ ┌─┐ +0 2 │ │ максимальное  ов ├───┼───┘ +2 1 │ │ максимальное головок ├───┴───┐ +3 2 │ │ starting reduced-╠яcylinder ├───┴───┤ +5 2 │ │ starting ╠precompensation cylinder ├───┼───┘ +7 1 │ │ maximum ECC ыburst length ├───┤ ╔═ ∙7: disable ш-access retries +8 1 │ │ хstep options ═╣ ∙6: disable ECC retries ├───┤ ╚═ ∙s 2-0: хoption +9 1 │ │ &ое Це таймаута ├───┤ +0aH 1 │ │ Це таймаута жатирования ├───┤ +0bH 1 │ │ Це таймаута жДя а ├───┴───┬─┐ +0cH 4 │ │ │ (7) └───┴───┴───┴───┘P─ ┌13H. Индекс их ┼ов  ф; ╡ф&U;j@ k &j0*UBBU!^U!sUujBu vЗы `э Зы `э2.0+ (╣щаются в AX, ален CF)aа# aаHex Dec Це Hex Dec Це▀▀▀ ▀▀▀ ▀ ▀▀▀ ▀▀▀ ▀ 1 1 xый r  0aH 10 xое jе 2 2 не найден 0bH 11 xый ат 3 3 Путь не найден 0cH 12 xый Зва 4 4 Слишком много bтых ов 0dH 13 xая ла 5 5 вотвергнут 0eH 14 (не Оуется) 6 6 xый gь (▌) 0fH 15 Задан xый и 7 7 Разрушены ┼и упр. ^ю 10H 16 Нельзя удалить тек kе 8 8 Недостаточно _ 11H 17 Не то же самое о 9 9 xый ╩┼а _ 12H 18 Больше sискомых ов■■■ ■■■ ■ э3.x Fn 59H добавления ■ 0 0 s`(не ожидайте 0, абыла хоть Мая-нибудь aа)13H 19 Попытка Ыи на защищенный и─┐14H 20 Неизвестный ID суба │15H 21 иовод не готов │16H 22 Неизвестная Жа │17H 23 aа мх иа (aа CRC) ╞═ Эти Зы )уют18H 24 xая за "ы Ъса │ aам 0-0cH, Zава-19H 25 aа поиска на ие │ емым в 9е DI обра-1aH 26 Неизвестный тип qя иа │ ботчику критических оши-1bH 27 3не найден │ бок ┌24H . Они же1cH 28 Ебумаги на Cе │ совпадают с Зами `1dH 29 aа Ыи │ в AL ж┌25H/26H1eH 30 aа я │1fH 31 Общая aа ─┘20H 32 Нарушение >ения а21H 33 Нарушение ─ки а22H 34 xая замена иа23H 35 сневен (слишком много bтых с)24H-49H (7)50H 80 уже !ует51H 81 (7)52H 82 Мы не знаем, ое53H 83 ┌24H сбой Emке Fя по критической aе┌─┐│ Класс aи │ Эти Зы Gляют дую Пю, помочь└─┘ вам mать aу.  я 59H ╣щает Це классаaи в 9е BH.КлассHex Dec Це (╣щается в BH  ей 59H)▀▀▀ ▀▀▀ G▀ 1 1 sресурса: не хватает с, _, каналов, gей ов и т.п. 2 2 ╖ная ситуация: исчезsсо ╖ем ({, ─ка а) 3 3 Проблема авторизации: вы ены иметь более высокие полномочия 4 4 Внутренняя aа: эсбилась 5 5 aа oя 6 6 0ная aа: эсбилась 7 7 aа Dя: некорректный Ъс, xые \ы и т.п. 8 8 Не найден: Ъшенный /не найден 9 9 xый ат: запорчен EXE, плохой ии т.п.0aH 10 ─ка: /захвачен другим Lем0bH 11 aа qя: xый и, aа Дя четности и т.п.0cH 12 Уже !ует: /уже !ует0dH 13 Неивестный класс: классификация не eа Фне подходит┌─┐│ Предлагаемое кие │ Эти Зы отражают подходящее кие по анению└─┘ aи. Идея состоит в том, сэкономить ваш З,не заставляя вас Bять Зы `в Dи. Вместо го вы достигsе,ости вверх, пяя предлагаемые ниже кия.  я 59H ╣щаетэти Зы в 9е BL.киеHex Dec Це (╣щается в BL  ей 59H)▀▀▀ ▀▀▀ G▀ 1 1 Повторить: повторите iю tраз. аaа повторяется, Ъсите Lя, проеать Фзакончить работу. 1 1 Задержать повтор: подождите немного и повторите iю. аaа повторяется, Ъсите Lя, проеать Фзакончить работу. 3 3 ┐Lя: аме жэбыли введены Lем, предложите ему повторить ┐(м.б., xый ID иа Фпуть). 4 4 Снять: снимите Dе. ~пить iи Яения, ие Мзакрытие ов, обновление индексов, освобождение _и т.п. 5 5 Немедленный о: снимайте немедленно без попытки Яения. 0а в подозрительном состоянии, и немедленный о- лучшее. 6 6 Игнорировать: aа ни на не влияет. 7 7 Повторить Iкия Lя: требуется вмешательство пользо- вателя ({, ка иеты). Iго повторите iю.┌─┐│ Сфера aи │ Эти Зы служат жтого, помочь вам fить место└─┘ aи.  я 59H ╣щает эти Зы в 9е CH.СфераHex Dec Це (╣щается в CH  ей 59H)▀▀▀ ▀▀▀ G▀ 1 1 Неизвестно: не !ует eной pи жEвязки aи 2 2 Блочное о: aа иового Фленточного а 3 3 (7) 4 4 1ьное о 5 5 ^┌ ─┐│ ╝и э│ mка `,а снизу вверх ж╡х ╝й э.└ ─┘ Eменимы .ие общие правила:  э1.x: индицирует vые aи, помещая в AL E╣те 0ffH.  э2.x: новые ▒ы 2.x индицируют aи, я CF=1 и помещая Зaи в AX.  э3.x: ▒ы 3.x по-прежнему помещают Зaи в AX ECF=1, но sгарантии, будущие ╝и будут поступать же. Советуем Оовать  ю 59H жMения Пи об aе.P─ ┌24H mка критических `  э  T-ЪB ат овых лы и ╖и 1 1 1 1 1 1 Эзите слово DIR_ENTRY+16H в 16-╞овый╓5┬4┬3┬2┬1┬0┬9┬8╥7┬6┬5┬4┬3┬2┬1┬0╖ 9и пите iи маскирования║ час │ минута │ сек/2 ║ и сдвига, извлечь компоненты ╖и╙─┴─┴─┴─┴─┴─┴─┴─╨─┴─┴─┴─┴─┴─┴─┴─╜ *ния/обновления а. ╚═══╦═══╝ ╚═╦═╝ ╚═══╦═══╝ ║ ║ ╚═ 2-секундные единицы (0-30) (t & 001fH) ║ ╚═ минута (0-59) ((t & 07e0H) >> 5) ╚═ час (0-23) ((t & 0f800H) >> 11) 1 1 1 1 1 1╓5┬4┬3┬2┬1┬0┬9┬8╥7┬6┬5┬4┬3┬2┬1┬0╖║ год │ месяц │ день ║ Слово DIR_ENTRY+18H. Iмаскирования и╙─┴─┴─┴─┴─┴─┴─┴─╨─┴─┴─┴─┴─┴─┴─┴─╜ сдвигов добавьте 1980 (07bcH) к году. ╚═╦═╝ ╚══╦══╝ ╚═══╦═══╝ ║ ║ ╚═ день (0-31) (d & 001fH) ║ ╚ ═ месяц (1-12) ((d & 01e0H) >> 5) ╚═ год (0-119) ((d & f800H) >> 9)P─эFns 11H 12H 57H kя  э `b3wE vgь аyя с э╝и 2.0, в репертуар э║ены UNIX-подобные овые функ-ции. Идея их состоит в том, , Ивы bваете , э╣щает вам16-╞овое Це "gя а" (▌). Iго, Ивы читаете,Nонируете, пишете Фзакрываете , вы ссылаетесь на него  егоgь.Одно из самых больших удобств - то, вы е обращаться к vым ой-ствам , Мбудто иовые ы,  Шные gи э: Предeные gи э ▌ Наименование и h■ G■ 0 &ое о ┐а (lо Ла) 1 &ое о ▓а (lо ) 2 &ое о `(┤CON──. жсообщений) 3 &ое о AUX (асинхр.╦; 1-й Iд. J──COM1) 4 &ый C (1-й параллельный JCа──LPT1)P─ ▌-cй в/в kя и ы &ый в/в ї.SYS  8╬ц& vф>&Щ70M?n?цQMWЩ WMBW Xjе ээRивает pь _, +ащую набор #■Z , Вые могутОоваться Dями жMения vой 0ной Пи и жZачи мх между Aами.  Жа э'SET' - общий интерфейс эс jем.  Жы 'PATH' и 'P╙PT' же куют на +имое jя.  НЕДОКУМЕНТИРОВАНО В пакетных ах, любой , окруженный процентами, заменяется на 'Це' jя, )ующее 'имени'. Eмеры: 1  SET PATH=c:\my_dir;%PATH% 2  IF .%USER%. == .dan. GOTO dan_label 3  ECHO %CMPRS% > %CUR_LPT% Gляет массу воз~стей. Однако в эпока не хватает ╡х средств, uых жкительно гибкого языка пакетной mки.jе имеет ограниченный <в э, но ~*ть большее jеEпомощи директивы 'SHELL=' в е ї.SYS ФЖы 'Ў/e:N',Вая Щает вторичную копию Жного Ратора, 7ируя N╟про$ства жjя. "а: Eмер в мнемонике ассемблера: У_1=Це_10 db 'COMSPEC=c:\Є.com',0 У_2=Це_20 db 'P╙PT=$p$g',0 : db 'WP=c:\wordproc',0 У_N=Це_N0 db 'PATH=d:\;c:\dos;c:\utils',0 0 db 0┌─ x  ─┐ ТОЛЬКО ┌─ dw 1 ─┐│ EXEC_string_10 ╞═ э ═╡ db 'C:\ACCTNG\AR001.EXE',0 ││ : │ 3.0+ └─ db 0 ─┘│ EXEC_string_NN0 │└─ 0  ─┘Здесь 0 - 1■NUL (00H), а x - 16-╞овое двоичноеЦе.┌─┐│ Оование jя │ jе не превышает 32K ╟и yется на└─┘ границе ]а. -ение 2cH в ╒ейAы +ит r]а jя.Вы е найти нужное 'У' серией сравнений #■Z, пока не дойдете допустой #и (нулевой зы), ет Еjя. lо 'У' вНой #е jя задано прописными буквами, но необязательно.Одна типичная iя с jем Оуется Aами типа оболочки, ко-торые Щают вторичную копию Ў.COM. ие Aы lо ищут 'У'"COMSPEC" и Оуют )ующее 'Це' Мполный путь РатораЖэ── Aы, Щаемой   ю э4bH .vые Aы требуют, оператор поместил Пю жDя вjе посредством Жы SET. Dе Оовать ую ина-цию EНом пении. {, овый ?ор отыскивать в ок-ружении 'У' "DICTIONARY" и Оовать )ующее 'Це' МУа со словарными мми.┌─┐│ "Гое" jе │ Ная Aа Mает статическую копию [она-└─┘ чального jя. Пому любые Хения, Выевы производите в jи, будут кительны жпорожденных вами?ов, и будут утеряны, Ивы верsе е в порождающий ?.sдокументированного способа отыскать "Гое", Ф"главное" jе.См. ┌2eH на предмет НЕДОКУМЕНТИРОВАННОГО способа. Вы е выйти из положе-ния, запустив копию Ў.COM и Zав ей нужное jе. Iго ╡Iдующие порожденные ?ы Mат копию го jя.┌─┐│ Отыскание пути Эзки │ yя с ╝и 3.0, эпомещает дую└─┘ #у за концом официального jя. Эта #а+ит ии путь, с Вых была Эжена Aа. "Умная" EкладнаяAа Оовать эту #у, облегчить себе поиск своиховерлеев и ов мх.имеет практическое Це, Мэ3.0 Oет оператору ░тьAу, я ее путь Zименем Aы.Вслед за Iдней #ой ■Z jя находится нулевой ╟, ющийЕофициального jя. .ие два ╟а +ат 16-╞овый двоичныйсчетчик дых #(lо 0001H). Вслед за Цем счетчика сидит#а ■Z, +ащая путь и Уа. в точности та #а, ВаяОовалась  ей э4bH (EXEC) жЭзки и Ща вашей Aы.Даже аAный был не в ем kи, и эОовала путьпоиска Ж(т.е. #у PATH=) жотыскания Aы, корректное полное УAного а (d:\путь\Уа.тип,0) ┬помещен за концом jя.P─ ╒ эFn 4bH (EXEC)+  э О+_8'х8(х8)х8*х8+х9-х9.х9/х90х92х93х94х95х96х9_9╖49╗H9О::енные Ки ■а┌16H Fn 00H вернула AL=0, то AH +ит :енный ЗКи ■,Мпоказано в этих  ах. а я 1ьного в/в э╣щает100H, вы ены вызвать ее еще раз, Mить :енный З■. ╓ ─╥─╥─╥─╖ ║ Key Hex Dec ║ Key Hex Dec ║ Key Hex Dec ║ Key Hex Dec ║ ╟ ─╫─╫─╫─╢ ║ F1 3b 59 ║ Shift-F1 54 84 ║ Ё-F1 5e 94 ║ Alt-F1 68 104 ║ ║ F2 3c 60 ║ Shift-F2 55 85 ║ Ё-F2 5f 95 ║ Alt-F2 69 105 ║ ║ F3 3d 61 ║ Shift-F3 56 86 ║ Ё-F3 60 96 ║ Alt-F3 6a 106 ║ ║ F4 3e 62 ║ Shift-F4 57 87 ║ Ё-F4 61 97 ║ Alt-F4 6b 107 ║ ║ F5 3f 63 ║ Shift-F5 58 88 ║ Ё-F5 62 98 ║ Alt-F5 6c 108 ║ ║ F6 40 64 ║ Shift-F6 59 89 ║ Ё-F6 63 99 ║ Alt-F6 6d 109 ║ ║ F7 41 65 ║ Shift-F7 5a 90 ║ Ё-F7 64 100 ║ Alt-F7 6e 110 ║ ║ F8 42 66 ║ Shift-F8 5b 91 ║ Ё-F8 65 101 ║ Alt-F8 6f 111 ║ ║ F9 43 67 ║ Shift-F9 5c 92 ║ Ё-F9 66 102 ║ Alt-F9 70 112 ║ ║ F10 44 68 ║ Shift-F10 5d 93 ║ Ё-F10 67 103 ║ Alt-F10 71 113 ║ ╙ ─╨─╨─╨─╜─╥─╥─╥─╥─Key Hex Dec ║ Key Hex Dec ║ Key Hex Dec ║ Key Hex Dec ║ Key Hex Dec─╫─╫─╫─╫─Alt-A 1e 30 ║ Alt-N 31 49 ║ Alt-0 81 129 ║ down  50 80 ║Alt-B 30 48 ║ Alt-O 18 24 ║ Alt-1 78 120 ║ left  4b 75 ║ ^left 73 115Alt-C 2e 46 ║ Alt-P 19 25 ║ Alt-2 79 121 ║ right  4d 77 ║ ^right 74 116Alt-D 20 32 ║ Alt-Q 10 16 ║ Alt-3 7a 122 ║ up  48 72 ║Alt-E 12 18 ║ Alt-R 13 19 ║ Alt-4 7b 123 ║ NUL 03 3 ║Alt-F 21 33 ║ Alt-S 1f 31 ║ Alt-5 7c 124 ║ Shft-Tab 0f 15 ║Alt-G 22 34 ║ Alt-T 14 20 ║ Alt-6 7d 125 ║ Del 53 83 ║Alt-H 23 35 ║ Alt-U 16 22 ║ Alt-7 7e 126 ║ End 4f 79 ║ ^End 75 117Alt-I 17 23 ║ Alt-V 2f 47 ║ Alt-8 7f 127 ║ Home 47 71 ║ ^Home 77 119Alt-J 24 36 ║ Alt-W 11 17 ║ Alt-9 80 128 ║ Ins 52 82 ║Alt-K 25 37 ║ Alt-X 2d 45 ║ Alt-- 82 130 ║ PgDn 51 81 ║ ^PgDn 76 118Alt-L 26 38 ║ Alt-Y 15 21 ║ Alt-= 83 131 ║ PgUp 49 73 ║ ^PgUp 84 132Alt-M 32 50 ║ Alt-Z 2c 44 ║ ║ ║ ^PrtSc 72 114─╨─╨─╨─╨─ ╔/═╗ ║ :ения 101-Кной Лы ─ ·║ ╓ ─╨ ─╥─╥ ─╨ ─╖ ║ Key Hex Dec ║ Key Hex Dec ║ Key Hex Dec ║ ╟─╫─╫─╢ ║ F11 85 133 ║ Alt-Bksp 0e 14 ║ Alt- K / a4 164 ║ ║ F12 86 134 ║ Alt-Enter 1c 28 ║ Alt- K * 37 55 ║ ║ Shft-F11 87 135 ║ Alt-Esc 01 1 ║ Alt- K - 4a 74 ║ ║ Shft-F12 88 136 ║ Alt-Tab a5 165 ║ Alt- K + 4e 78 ║ ║ Ё-F11 89 137 ║ Ё-Tab 94 148 ║ Alt- K Enter a6 166 ║ ║ Ё-F12 8a 138 ║ ║ ║ ║ Alt-F11 8b 139 ║ Alt-up  98 152 ║ Ё- K / 95 149 ║ ║ Alt-F12 8c 140 ║ Alt-down  a0 160 ║ Ё- K * 96 150 ║ ║ Alt-[ 1a 26 ║ Alt-left  9b 155 ║ Ё- K - 8e 142 ║ ║ Alt-] 1b 27 ║ Alt-right  9d 157 ║ Ё- K + 90 144 ║ ║ Alt-; 27 39 ║ ║ ║ ║ Alt-' 28 40 ║ Alt-Delete a3 163 ║ Ё- K  [8] 8d 141 ║ ║ Alt-` 29 41 ║ Alt-End 9f 159 ║ Ё- K 5 [5] 8f 143 ║ ║ Alt-\ 2b 43 ║ Alt-Home 97 151 ║ Ё- K  [2] 91 145 ║ ║ Alt-, 33 51 ║ Alt-Insert a2 162 ║ Ё- K Ins[0] 92 146 ║ ║ Alt-. 34 52 ║ Alt-PageUp 99 153 ║ Ё- K Del[.] 93 147 ║ ║ Alt-/ 35 53 ║ Alt-PageDown a1 161 ║ ║ ╙─╨─╨─╜э 1ьного в/в /ы Лы и Лы ┌16H  ╢DхDх'Н+┘4╢7Г 7╗7╢27 ┘8/ы ЛыИЛа ░ет аппаратное Fе, она Zает mчику преры-ваний "/". mчик преобразует /либо в З■, либо в :енный З■. ж,ости между =ми типами Лразумно Eвязываться к ·-Рации нажатой Ки.┌─┐│ &ая Ла PC/XT │ Eотпускании Ки, Ла посылает└─┘ тот же /с ║енным старшим ╞ом({, [Ё] посылает 1dH Eнажатии и 9dH Eотпускании). ─╥ ─╥─╥─╥─Hex Dec Key ║Hex Dec Key ║Hex Dec Key ║Hex Dec Key ║Hex Dec Key ─╫ ─╫─╫─╫─01 1 Esc ║12 18 E ║23 35 H ║34 52 . > ║45 69 NumLock02 2 1 ! ║13 19 R ║24 36 J ║35 53 / ? ║46 70 ScrollLock03 3 2 @ ║14 20 T ║25 37 K ║36 54 Shft(Rt)║47 71 Home [7]04 4 3 # ║15 21 Y ║26 38 L ║37 55 PrtSc ║48 72  [8]05 5 4 $ ║16 22 U ║27 39 ; : ║38 56 Alt ║49 73 PgUp [9]06 6 5 % ║17 23 I ║28 40 " ' ║39 57 spacebar║4a 74 K -07 7 6 ^ ║18 24 O ║29 41 ` ~ ║3a 58 CapsLock║4b 75  [4]08 8 7 & ║19 25 P ║2a 42 Shft(L)║3b 59 F1 ║4c 76 [5]09 9 8 * ║1a 26 [ { ║2b 43 \ | ║3c 60 F2 ║4d 77  [6]0a 10 9 ( ║1b 27 ] } ║2c 44 Z ║3d 61 F3 ║4e 78 K +0b 11 0 ) ║1c 28 Enter║2d 45 X ║3e 62 F4 ║4f 79 End [1]0c 12 - _ ║1d 29 Ё║2e 46 C ║3f 63 F5 ║50 80  [2]0d 13 + = ║1e 30 A ║2f 47 V ║40 64 F6 ║51 81 PgDn [3]0e 14 bksp║1f 31 S ║30 48 B ║41 65 F7 ║52 82 Ins [0]0f 15 Tab ║20 32 D ║31 49 N ║42 66 F8 ║53 83 Del [.]10 16 Q ║21 33 F ║32 50 M ║43 67 F9 ║11 17 W ║22 34 G ║33 51 , < ║44 68 F10 ║ ─╨ ─╨─╨─╨─┌─┐│ 84-Кная Ла AT │ Эта Ла посылает те же /ы, и└─┘ типовая 83-Кная, с тем добавлением,  [SysReq] посылает /54H (десятичное 84).Однако ·ниИне Zает т /в Eкладную Aу.Вместо го он ░ет ┌15H Q. 85H Eнажатии и отпускании SysReq.Отпускание Ки nется иначе. Eотпускании Ки Лапосылает двух╟овую Hость: 0f0H, Ч/'нажатия'.См.  Лы AT о Aировании ой Лы.┌─┐│ 101-Кная Ла │ Эта Ла имеет имеет три =х схемы└─┘ /ов, выбираемых  J64H. На уровне/ов !ует много !енных отличий от более старых Л.Эта ╝я Tech █! не ║ает Пи по 101-Кной Ле.Будущие ╝и будут +ать эти сведения (авы попросите об м).Посмотрите пока :енные Ки ■- там есть интерфейс ·жйЛы. И, в конце концов, самое лучшее - Eвязаться к му интерфейсу.P─ ┌09H и Лы :енный ■ Ла AT +╬├ З>Е@Е @ Ж@├%@ ▀A╚ы ав овом 8е хранится МHость пар ╟, где [ый╟в Ной паре - любой из 256 1ов ■, а второй ╟- ╚его▓а. ж╦ов  ной графики в овом 8е ╚e: ┌─7─┬─6─┬─5─┬─4─┬─3─┬─2─┬─1─┬─0─┐ │fgB│background │brt│рeground │ └─╥─┴───┴───┴───┴─╥─┴───┴───┴───┘ ║ ╚═══╦═╝ ║ ╚ ═╩══  Zнего плана (от 0 до 0fH) ║ ║ ╚═ интенсивность: 1=Zний план яркий ║ ╚═ фоновый  (от 0 до 7) ╚═ мерцание: 1=Zний план мерцает ╔══ 00H черный ═══╗ ║ 01H синий ║ ║ 02H зеленый ║ ║ 03H голубой ╠═ опции фона ║ 04H красный ║ ║ 05H розовый ║ ║ 06H коричневый║ ула жвычисления ╚а: опции ║ 07H серый ═╝ (фон * 16) + Zний план Zнего ═╣ 08H темно-серый (добавьте 128 жмерцания) плана ║ 09H ярко-синий ║ 0aH светло-зеленый ║ 0bH светло-голубой ║ 0cH светло-красный ║ 0dH светло-розовый ║ 0eH желтый ╚══ 0fH белый┌─┐│ ╚ы ф│ В ╦ах ф ╚ы  а могут └переeы.└─┘ ╟╚а в ╗_в кительности fяетодин из 64 =х комбинаций  ов (плюс мерцание). В 5ате вы евызвать ф ·210H жки ╚а  а, lо изображающего"черный на белом", жвыдачи "желтого на синем" Флюбой другой комбинации.┌ ─┐│ Ограничения │ Хотя любой ╚Ооваться на любом }е, неко-└ ─┘ торые }ы неспособны отображать полный диапазон  ов.Оуйте .ую  у жподбора Eемлемой комбинации на }е: █"▀█"▀█ █ TTL |ые }ы █ Одно ные составные }ы █ █"▄█"▄█ █ 01H подчеркивание █ 07H lый (серый на черном) █ █ 07H lый (серый на черном) █ 08H темно-серый на черном █ █ 09H яркий с подчеркиванием █ 0fH жирный (белый на черном) █ █ 0fH жирный (белый на черном) █ 70H реверс (черный на сером) █ █ 70H реверс (черный на сером) █ 78H темно-серый на белом █ █ 81H мерцание с подчеркиванием █ 7fH белый на сером █ █ 87H мерцание █ 87H мерцание █ █ 89H яркий мерцающий подчеркнутый █ 8fH жирный мерцающий █ █ 8fH жирный мерцающий █" █ G▀|ый (TTL) }IBM отображать комбинации, перечисленныевыше. ├о остальных комбинаций выдаются Мсерый на черном.┌─┐│ Составной }│ Недорогой составной }, Eсоединенный к &ой└─┘ плате CGA, ░ет трудности Eотображении  ов.В 8е color-burst (е ж├а A) ├о комбинаций ов (за исключением перечисленных выше) не отображаются. выйти из поло-жения, отмените 8color-burst Жой эMODE BW80 Ф Fе ┌10H .P─ ┌10H ╗8ы ф Jы в/в CGA +ХЕ+ ╒ Х/Е>Х >Е>╒? а ╗\овЭта  а ╩уется ╛ом Fя ┌1dH (0:0074).Она Оуется Fем ┌10H Q. 00H EХении 8а ╗.Ця в й  е - Ця 9ов, Вые ены └Эженыв 6845 CRT Длер, а же другие ме (столбцов на е и т.п.)ж╗Xых, хранящихся в pи мх ·по ╩у 0:0449.Вы е переить ╛┌1dH на ваши собственные 6ные  ы.Iго очередная смена 8а ╗ ┌10H ┬ОоватьЦя из ваших  .-. за +имое▀ ▀ C▀ ┌── ─ ─ ─ ─ ─ ─ ─ ──┐ +0 10H │ │ 6845 9ы (см. ниже) ж40x25 8ов ├── ┴ ─ ┴ ─ ┴ ─ ┴ ──┤ +10H 10H │ │ 6845 9ы ж80x25 8ов ├─ ─┴ ─ ┴ ─ ┴ ─ ┴ ──┤ +20H 10H │ │ 6845 9ы жних 8ов ├── ┴ ─ ┴ ─ ┴ ─ ┴ ──┤ +30H 10H │ │ 6845 9ы ж80x25 |ой платы ├───┴───┼ ─ ┴ ─ ┴ ──┘ +40H 2 │ │ RAM size одной $ицы а (40x25 8ы) ├───┴───┤ +42H 2 │ │ RAM size одной $ицы а (80x25 8ы) ├───┴───┤ +44H 2 │ │ regen size жграфики низкого разрешения ├───┴───┤ +46H 2 │ │ regen size жграфики высокого разрешения ├───┼───┼───┬───┬───┬───┬───┬───┐ +48H 8 │ │ │ │ │ │ │ │ │ столбцов ж8ов 1-8 ├───┼───┼───┼───┼───┼───┼───┼───┤ +50H 8 │ Це 9а ки 8а (J3d8H) жНого 8а. └───┴───┴───┴───┴───┴───┴───┴───┘ ее Це сидит в 0:0465▀ ▀ D▀[ые 40H ╟ ы +ат четыре 16-╟овых  ы, Ная из Вых+ит набор одно╟овых Цй жНого из 9ов CRT-Длера6845 в порядке их Hости (R0...R15): R0: horizontal total──horizontal sync in єclocks R1: horizontal цed──1ов в #е R2: horizontal sync position──can use to move цleft or right R3: sync width──═√horizontal pulse (4 ∙s each) R4: ═total──╡го вертикальных 1ьных # R5: ═adjust──adjusts р50 or 60 Hz refresh R6: ═цed──выведено 1ьных # R7: ═sync position──сдвинуто #вверх Фвниз R8: interlace ╓(∙s 4 √5) √skew (∙s 6 √7) R9: max scan line №──скан-#на 1ьную #уR10: cursor start──zльная скан-#а БаR11: cursor stop──конечная скан-#а БаR12: video ╫start №──╩╔ной ╗$ицы (старший ╟)R13:; (младший ╟)R14: ╩Ба (старший ╟)R15: (младший ╟)9ы 16-17 не ║ены в  у, но Eводятся здесь жполноты:R16: ╩светового пера (старший ╟)R17: (младший ╟)P─ ┌1dH ┌10H Xые ·  И, ╒,И8уИ ╒Список oят список описывает ленное Ф╔ное обоудование. Он ╣щаетсяFем ┌11H (в AX) и хранится среди мх ·по ╩у 0:0410. 1 1 1 1 1 1╓5┬4┬3┬2┬1┬0┬9┬8╥7┬6┬5┬4┬3┬2┬1┬0╖ ▒ите ┌11H Физвлеките слово 0:0410║prt│ │j│ aux │ ║drv│vid│RAM│ │ ║╙─┴─┴╥┴╥┴─┴─┴─┴╥╨─┴─┴─┴─┴─┴─┴╥┴╥╜ ╞! маска ╚╦╝ ║ ║ ╚═╦═╝ ║ ╚╦╝ ╚╦╝ ╚╦╝ ║ ╚═ 0: 0 = sиовых  (AX & 0001H) ║ ║ ║ ║ ║ ║ ║ ║ ╚═══ 1: 8087 со?ор (ненадежно) ║ ║ ║ ║ ║ ║ ║ ╚═ 2-3: материнская плата RAM (AX & 0eH) ║ ║ ║ ║ ║ ║ ║ 01H=16K; 04H=32K; 0eH=64K (Фбольше) ║ ║ ║ ║ ║ ║ ╚ ═ 4-5: zльный/╔ный 8 (AX & 0030H) ║ ║ ║ ║ ║ ║ 10H=40-кол  н; 20H=80-кол  н; ║ ║ ║ ║ ║ ║ 30H=TTL |ая плата ║ ║ ║ ║ ║ ╚═ 6-7: ╡го иоводов -1 (AX & 00c0H) ║ ║ ║ ║ ║ 00H=1; 40H=2; 80H=3; c0H=4 ║ ║ ║ ║ ╚═ 8: юEсутствует (AX & 0100H) ║ ║ ║ ╚═ 9-11: RS232 Jы (AX & 0e00H) ║ ║ ║! 000H=s; 200H=1; 400H=2; ... e00H=7 ║ ║ ╚═12: 1=игровой ╦Eсутствует(AX & 1000H) ║ ╚═13: 1=Iд.C Jr  ╚═14-15: лено Cов (AX & c000H)) 0H=s; 4000H=1; 8000H=2; c000H=3Замеч: Часто Оуется жBки 8а ╗. а(AX & 30H) = 30H, то ╦|ый──╗4RAM по ╩у 0b000H, иначе 0b800H.P─ ┌11H pь мх · 'ОО ! ┘%О %╒&и состояния ЛыДва ╟а с ╩ами 0:0417 и 0:0418 +ат состояние служебных Кидругую полезную Пю. Fе ┌16H ╣щает [ый ╟в AL.╓7┬6┬5┬4┬3┬2┬1┬0╖║i│c│n│s│A│C│ │ ║ ▒ите ┌16H Физвлеките ╟по ╩у 0:0417╙╥┴╥┴╥┴╥┴╥┴╥┴╥┴╥╜ ╞ ║ ║ ║ ║ ║ ║ ║ ╚═ 0: правая Ка Shift (AL & 01H) 01H=нажата ║ ║ ║ ║ ║ ║ ╚═══ 1: левая Ка Shift (AL & 02H) 02H=нажата ║ ║ ║ ║ ║ ╚═ 2: Ё (AL & 04H) 04H=[Ё] нажата ║ ║ ║ ║ ╚═ 3: Alt (AL & 08H) 08H=[Alt] нажата ║ ║ ║ ╚ ═ 4: ScrollLock (AL & 10H) 10H=8ScrollLock ║ ║ ╚ ═ 5: NumLock (AL & 20H) 20H=8NumLock ║ ╚ ═ 6: CapsLock (AL & 40H) 40H=8CapsLock ╚═ 7: Insert (AL & 80H) 80H=8Insert╓7┬6┬5┬4┬3┬2┬1┬0╖║I│C│N│S│ │ │ │ ║ извлеките AL=╟по ╩у 0:0418╙╥┴╥┴╥┴╥┴╥┴╥┴╥┴╥╜ ╞ ║ ║ ║ ║ ║ ║ ║ ╚═ 0: Ё(левая Ка Ё) (AL & 01H) 01H=нажата ║ ║ ║ ║ ║ ║ ╚═══ 1: Alt (левая Ка Alt) (AL & 02H) 02H=нажата ║ ║ ║ ║ ║ ╚═ 2: SysReq (AL & 04H) 40H=SysReq нажата ║ ║ ║ ║ ╚═ 3: задержка (AL & 08H) 08H Ё-NumLock (пауза) ║ ║ ║ ╚ ═ 4: ScrollLock (AL & 10H) 10H=[ScrollLock] нажата ║ ║ ╚ ═ 5: NumLock (AL & 20H) 20H=[NumLock] нажата ║ ╚ ═ 6: CapsLock (AL & 40H) 40H=[CapsLock] нажата ╚═ 7: Insert (AL & 80H) 80H=[Ins] нажатаЗамеч: ╞ы 0-2 ╟а 0:0418 eы ж101-Кной Лы. ╞2 Оуется в PCjr жиндикации ситуации "key click". vые старые Aы Хяют ╞ы NumLock и CapsLock (по ╩у 0:0417), ить нужный %. не следует делать, потому со╖ные Лы снабжены световыми индикаторами, Вые тем самым перестанут отражать ий %. См. Лу AT на предмет более подробной Пи. ╟ы %а PCjr по ╩у 0:0488 опущены - неинтересно.P─ ┌16H Xые · !ч*!у&╒'╙-ScanВо ╢холодного старта, IPOST и ки ╡х ых mчиковFй, ·пяет Bку на внешнюю ^╙, подключенную  платы oя. Эта Bка известна М╙-scan.Ье: ╙-scan не была реализована в ранних ╝ях ·, и старые PC (имеющие максимально 64K на материнской плате) не смогут Оовать средство, ане лена более поздняя ╝я ╙-·.Внешние модули ╙могут └лены между ╩ами c800:0 и e000:0.Ный 2K ┼в м интервале Bяется на подпись и имеет ой ат:-. за +имое▀ ▀ C▀ ┌───┐ +0 1 │55H│ Подпись вного ж·модуля ╙ ├───┤ ([ое слово в 4е = aa55H) +1 1 │aaH│ ├───┤ +2 1 │len│ за модуля ╙в 512-╟овых единицах ├───┼ ─ ┬───┐ +3 ? │ │ │ │ пимый З ├───┼ ─ ┴───┘ (часто NEAR-Tна ЗТации) | | (lо - фиктивный ╟жBки контр.суммы)И·находит подпись ╙, он пяет Дьное суммирование модуля.╡╟ы складываются по модулю 100H, и сумма ена └равна 0. амодульBен и корректен, ·пяет FAR CALL на -ение 0003H 4а.Ожидается, ╙верsе в ·посредством FAR RET.lо ╙-модуль пяет ╡uые iи по Тации оборудо-вания и вставляет свой собственный ╩в один Фt╛ов преры-ваний.Гнезда ╙U17 и U37 на материнской плате ▌AT▐ ╩уются, yя с e000:0.Поиск модуля о!ляется по 64K-╟овым ┼ам. амодуль !ует, он┬иметь подпись aa55H, неОуемый ╟зы, пимый З, yю-щийся по -ению 0003, и Дьную сумму 0 по модулю 100H в e000:f.P─ Xые ·  +ччDRТ[ч8pНHД▒ Е▒+Ж▒5з├4░Н4╗Н─Н<─Ш┼CMOS Storage LayoutAT-class PCs contain a battery-powered real-time clock (RTC) √64-ўs oflow-power, non-volatile CMOS ╫.This ╫contains a variety of inрmation, including ╬яtime √date, along with ▄ware configuration √a shut-down ╧ў(╬shutdown ўis used in ╬mechanism which permits ╬AT to restart where itleft off after issuing a processor reset to exit from protected ╓).When you see ╬"Run Setup" prompt during POST it is because some ▄ware didnot match ╬configuration record or because of some o╬r problem with ╬CMOS RAM.№Summary (detailed inрmation follows)▀ *▀00H-0dH used by real-time clock0eH POST diagnostics ╧ў0fH shutdown ╧ў10H чхtype ─┐11H reserved │12H ▄шхtype │13H reserved ╞═ checksum-protected14H equipment ў │ configuration record (10H-20H)15H-16H Base ╫size │17H-18H extended ╫above 1M │19H ▄ш1 type (if > 15) │1aH ▄ш2 type (if > 15) │1bH-2dH reserved ─┘2eH-2fH storage рchecksum of CMOS №es 10H through 20H30H-31H extended ╫above 1M32H яcentury in BCD (eg, 19H)33H miscellaneous info.34H-3fH reserved┌─┐│Using CMOS ы│└─┘To ╥a ўfrom CMOS, do an OUT 70H,addr; followed by IN 71H.To ╠a ўto CMOS, do an OUT 70H,addr; followed by OUT 71H,value.Example: ;- ╥what type of ▄шis installed mov al,12H out 70H,al ;╨CMOS №12H jmp $+2 ;this рces a slight delay to settle things in al,71H ;AL now has хtype (0-15)№es 10H thru 20H are protected by a checksum methodology to be able todetect when ╬battery has died or invalid inрmation has been written into╬configuration record. This a simple 16-∙sum of ╬protected ўs.┌─┐│CMOS ╫Layout Detail │└─┘Addr ъ▀ K▀ 0 яsecond рreal-time clock ┌─┐ 1 alarm second! │ Note: рmore info on ╬│ 2 яminute рreal-time clock │ real-time clock, refer to │ 3 alarm minute! │ Motorolla MC146818 specs. │ 4 яminute рreal-time clock └─┘ 5 alarm hour 6 яday of week рreal-time clock 7 яdate of month рreal-time clock 8 яmonth рreal-time clock 9 яyear рreal-time clock K0aH RTC ╧╤A ╓7┬6┬5┬4┬3┬2┬1┬0╖ ║ │ │ ║ ╙╥┴─┴─┴─┴─┴─┴─┴─╜ ║ ╚═╦═╝ ╚═╩═ rate ╨or (set to 0110) ║ ╚ ═ 22-stage divider (set to 010) ╚═ Update in progress (UIP) flag. 0 means OK to ╥. K0bH RTC ╧╤B ╓7┬6┬5┬4┬3┬2┬1┬0╖ ║ │ │ │ │ │ │ │ ║ ╙╥┴╥┴╥┴╥┴╥┴╥┴╥┴╥╜ ║ ║ ║ ║ ║ ║ ║ ╚═ daylight savings у. 0=st√ard time (set to 0) ║ ║ ║ ║ ║ ║ ╚═══ 12 or 24-hr. 0=12-hr ╓(set to 1) ║ ║ ║ ║ ║ ╚═ BCD date ╓. 1=binary, 0=BCD. (set to 0) ║ ║ ║ ║ ╚═ Square wave у. 1=turn on square wave. (set to 0) ║ ║ ║ ╚ ═ уupdate-ended int. 0 disables. (set to 0) ║ ║ ╚ ═ уalarm int. 0 disables (set to 0) See ┌1aH ║ ╚ ═ уperiodic int. 0 disables (set to 0) ╚═ Update in progress (UIP) flag. 0 means OK to ╥. K0cH RTC ╧╤C. ╥-only ╪╧∙s. K0dH RTC ╧╤D. ∙7=1 when a CMOS-RAM is receiving power! =0 to indicate a dead battery. K0eH POST diagnostics ╧ў ╓7┬6┬5┬4┬3┬2┬1┬0╖ ║ │ │ │ │ │ │0 0║ ╙╥┴╥┴╥┴╥┴╥┴╥┴─┴─╜ ║ ║ ║ ║ ║ ╚═ Time valid (After POST, 1 means it's not Feb 30) ║ ║ ║ ║ ╚═ ▄шbad. 1 means can't boot from ▄ш ║ ║ ║ ╚ ═ RAM size not right. 1 = POST found different RAM size ║ ║ ╚ ═ Configuration record not right. 1=different equipment ║ ╚ ═ Checksum invalid. 1 means bad checksum in CMOS RAM ╚═ Power Lost. 1 means real-time clock battery died K0fH shutdown ╧ў This ўis ╥upon startup after processor reset in order to determine if ╬reset was used as a way to get out of 80286 protected ╓. 0 = soft reset (Ё-Alt-Del) or unexpected shutdown 1 = shutdown after ╫size is determined 2 = shutdown after ╫test is perрmed 3 = shutdown after ╫error (parity check 1 or 2) 4 = shutdown with bootstrap loader request 5 = shutdown with FAR JMP (restart int ёler √jmp to 0:[0467H]) 6,7,8 = shutdown after passing a protected ╓test 9 = shutdown after perрming block move. See ┌15H SubFn 87H 0aH = shutdown with FAR JMP (immediate jmp to №at 0:[0467H]) K10H чхtype ╓7┬6┬5┬4┬3┬2┬1┬0╖ ║ │ ║ ╙─┴─┴─┴─┴─┴─┴─┴─╜ 0 = no х ╚══╦══╝ ╚═╩═ first чх══╦═ 0001 = 360K х ╚ ═ second чх═╝ 0 = hi-capacity х K11H reserved K12H ▄шхtype (рхs C: √D:, when between 1 √14) ╓7┬6┬5┬4┬3┬2┬1┬0╖ ║ │ ║ ╙─┴─┴─┴─┴─┴─┴─┴─╜ ╚══╦══╝ ╚═╩═ first ▄ш(хC:) ══╦═ 0 = not present ╚ ═ second ▄ш(хD:) ═╝ else = type ID (below)9 1 = use Addr 19H/1aH ╬se хtypes are pre-defined by ╬╙-·. ╬vectors р┌41H √┌46H are initially set to a ╙table containing ╬inрmation р ╬types of х(s) installed. See ▄шParameter Table ╠ L√ ╠ L√ Type Cyls Hds PreComp Zone Size Type Cyls Hds PreComp Zone Size ▀ ▀ ▀▀▀ ▀ ▀ ▀ ▀ ▀ ▀▀▀ ▀ ▀ ▀ 1 306 4 128 305 10M 16 612 4 0 663 21M 2 615 4 300 615 21M 17 977 5 300 977 42M 3 615 4 300 615 32M 18 977 7 0fH 977 59M 4 940 8 512 940 65M 19 1024 7 512 1023 62M 5 940 6 512 940 49M 20 733 5 300 732 31M 6 615 4 0fH 733 21M 21 733 7 300 732 44M 7 462 8 256 511 32M 22 733 5 300 733 31M 8 733 5 0fH 733 31M 23 306 4 0 336 10M 9 900 15 0fH 901 117M 24-47 reserved 10 820 3 0fH 820 21M 11 855 5 0fH 855 37M If ╬ш-type nibble is 0fH (15), 12 855 7 0fH 855 52M ╬n ╬шtype is stored in CMOS 13 306 8 128 319 21M №19H (хC:) or №1AH 14 733 7 0fH 733 44M (хD:) 15 reserved──don't use Notes: ■ Type 1 is ╬original XT ▄ш ■ Type 2 is ╬st√ard 20M AT ▄ш(√a good first guess) ■ Types 16-23 were added to ╙-·dated 11/15/85 K13H reserved K14H Equipment ў ╓7┬6┬5┬4┬3┬2┬1┬0╖ ║drv│dsp│n/a│7│d║ ╙─┴─┴─┴─┴─┴─┴╥┴─╜ ╚╦╝ ╚╦╝ ║ ╚═ 1 = чх(s) installed ║ ║ ╚═══ 1 = 80287 math co-processor installed ║ ╚ ═ primary ц00 = none or ф ║ 01 = 40-clm CGA ║ 10 = 80-clm CGA ║ 11 = TTL Monochrome ╚═ чхs-1 (00=1, 01=2, 10=3, 11=4) K15H Base ╫(low ў) ══╦═ 0100H=256K, 0200H=512K, 0280H=640K16H Base ╫(high ў) ═╝17H extended ╫above 1M (low ў) ══╦═ (in K ўs. 0-3c00H)18H extended ╫(high ў)  ═╝ See ┌15H SubFn 88H K19H ш0 (хC:) ▄шtype if (CMOS addr 12H & 0fH) is 0fH1aH ш1 (хD:) ▄шtype if (CMOS addr 12H & f0H) is f0H K1bH-2dH reserved K2eH checksum of CMOS №es 10H through 20H (high ў)2fH. (low ў) K30H extended ╫above 1M (low ў) ══╦═ (in K ўs. 0-3c00H)31H extended ╫(high ў)  ═╝ See ┌15H SubFn 88H K32H century in BCD (eg, 19H) K33H miscellaneous info. ∙7=IBM 128K ╫option installed ∙6=used by "Setup" utility K34H-3fH reserved. Put your name here рeverlasting amusement.P─ ┌15H4 ёBlock Index ┐└┴┬5ч║'И6ШYи Yи PC (║ая PC-1 и PC-2) Yи XT Yи AT Yи фDIP-Yи на PC и XT сообщают ·, Мое oе и сколько _лено. Эти Yи опрашиваются во ╢POST ; в Xой · Список oя ются )ующие ╞овые и, Выевны Aисту  Fе ┌11H (Дь oя).Пункты Eведенного выше меню описывают Ця Yей ж=х&ых моделей IBM.Клоны PC могут не отвечать этим описаниям. Yи модели Compaq ╘ableне похожи на Yи &ых PC и не описаны ни в одном из документов,вных Lям Compaq. Yи Deskpro располагаются внутри0ного ┼а.P─6 Индекс их ┼ов  ║╒=С'1├:?~7Z╝░║░╛6░Ш▒Yи PCНа [оzльном PC (64K материнская плата; известен МPC-1), есть два ┼аDIP Yей, помеченные SW1 и SW2. Eведем сводку их Цй: SW1# SW 2 (PC-1) ON ╓1┬2┬3┬4┬5┬6┬7┬8╖ ON ╓1┬2┬3┬4┬5┬6┬7┬8╖  ║ │ │ │ │ ║  ║ │▄│▄│▄│▄║ ╙╥┴╥┴─┴─┴─┴─┴─┴─╜ ╙─┴─┴─┴─┴─┴─┴─┴─╜ ║ ║ ╚╦╝ ╚╦╝ ╚═╩═ 7-8: флоппи-иоводы ╚══╦══╝ ╚═╩═ 5-8: ┤OFF ║ ║ ║ ╚═ 5-6: ╔ный дисплей ╚ ═ 1-4: ╡го RAM ║ ║ ╚ ═ 3-4: 0ная плата RAM ║ ╚ ═ 2: 8087 со?ор ╚═ 1: флоппи-иоводыБолее поздняя ╝я PC (называемая SW 2 (PC-2)PC-2) имеет другой ·, Вый ON ╓1┬2┬3┬4┬5┬6┬7┬8╖Рирует Yи t  ║ │▄│▄│▄║иначе. SW1 - тот же, но SW2 ╙─┴─┴─┴─┴─┴─┴─┴─╜Рируется .им образом: ╚═══╦═══╝ ╚═══╩═ 6-8: ┤OFF3 ╚ ═ 1-5: ╡го RAMНа PC и XT вы е Хить кие положения Yей, Хив ╟ыв списке oя в pи мх ·0:0410 и переЭзив э.Обязательно Kе сzла 1234H в 0:0472, потом ▒ите ┌19H .┌─┐│ PC и XT SW1: Флоппи-иоводы │ Три Yя ют, сколько└─┘ флоппи-иоводов подключено к 0е. SW1 ON ╓1┬2┬3┬4┬5┬6┬7┬8╖  ║▄│ │ │ │ │ │▀│▀║ 1 флоппи-иовод (а0 иоводов, то Nя 1 = ON) ╙─┴─┴─┴─┴─┴─┴─┴─╜ ON ╓1┬2┬3┬4┬5┬6┬7┬8╖  ║▄│ │ │ │ │ │▄│▀║ 2 флоппи-иовода ╙─┴─┴─┴─┴─┴─┴─┴─╜ ON ╓1┬2┬3┬4┬5┬6┬7┬8╖  ║▄│ │ │ │ │ │▀│▄║ 3 флоппи-иовода ╙─┴─┴─┴─┴─┴─┴─┴─╜ ON ╓1┬2┬3┬4┬5┬6┬7┬8╖  ║▄│ │ │ │ │ │▄│▄║ 4 флоппи-иовода ╙─┴─┴─┴─┴─┴─┴─┴─╜┌─┐│ PC и XT SW1: ╔ный }│ Эти Yи ют 0е, Мой└─┘ дисплейный ╦Оовать E║ении0ы. аPC ничего не выдает I║ения питания, └из-занекорректного положения Yей. SW1 ON ╓1┬2┬3┬4┬5┬6┬7┬8╖  ║ │ │ │ │▀│▀│ │ ║ s╦а Фф ╙─┴─┴─┴─┴─┴─┴─┴─╜ ON ╓1┬2┬3┬4┬5┬6┬7┬8╖  ║ │ │ │ │▄│▀│ │ ║ 40x25  ной ний ╦(CGA) ╙─┴─┴─┴─┴─┴─┴─┴─╜ ON ╓1┬2┬3┬4┬5┬6┬7┬8╖  ║ │ │ │ │▀│▄│ │ ║ 80x25  ной ний ╦(CGA) ╙─┴─┴─┴─┴─┴─┴─┴─╜ ON ╓1┬2┬3┬4┬5┬6┬7┬8╖  ║ │ │ │ │▄│▄│ │ ║ |ый ╦(MDA) Фоба - MDA и CGA ╙─┴─┴─┴─┴─┴─┴─┴─╜┌─┐│ PC и XT SW1: 8087 │ т Yь Oет со?ору 8087 прерывать└─┘ CPU ( немаскируемое Fе ┌02H ), Ионвстречает исключительное условие (ое Мделение на 0). аон выключен, тоены └лены Aные средства жотслеживания ┌02H и опреде-ления, вызвано ли Fе aой четности _Фисключительным условиемна со?оре 8087. SW1 ON ╓1┬2┬3┬4┬5┬6┬7┬8╖  ║ │▄│ │ │ │ │ │ ║ 8087 лен ╙─┴─┴─┴─┴─┴─┴─┴─╜ ON ╓1┬2┬3┬4┬5┬6┬7┬8╖  ║ │▀│ │ │ │ │ │ ║ 8087 не лен ╙─┴─┴─┴─┴─┴─┴─┴─╜┌─┐│ PC SW1: 0ная плата RAM │ Оба эти Yя ены └выключены ж└─┘ 0, имеющих 64K ╟а _Фболее(т.е. ╡0ы способны dсостояние). SW1 ON ╓1┬2┬3┬4┬5┬6┬7┬8╖  ║ │ │▄│▄│ │ │ │ ║ 64K Фбольше на 0ной плате ╙─┴─┴─┴─┴─┴─┴─┴─╜┌ ─┐│ PC-1 SW2 (0ная плата RAM) │ Эти Yи предназначены жориги-└ ─┘ нального PC (менее 64K на 0ной плате),Вый имеет старую ╝ю ╙-·; т.е. он не имеет ╙-Scan и не связан сплатой :ения Фне имеет самоЭжающегося ого иа. МаксимальноеЦе Yей жой 0ы - 544K. SW2 (PC-1) ON ╓1┬2┬3┬4┬5┬6┬7┬8╖ Ье: на PC-1, Nи 5-8 SW2 ┤OFF.  ║▀│▀│▀│▀│ │ │ │ ║ 64K ╙─┴─┴─┴─┴─┴─┴─┴─╜ ON ╓1┬2┬3┬4┬5┬6┬7┬8╖ ┌1─┐  ║▀│▄│▀│▀│ │ │ │ ║ 128K │ Yи задают двоичное 32K-╟овых│ ╙─┴─┴─┴─┴─┴─┴─┴─╜ │ ┼ов, Eчем OFF задает 1, ON - 0. не │ ON ╓1┬2┬3┬4┬5┬6┬7┬8╖ │ обращаться к схеме, просто запомните: │  ║▀│▀│▄│▀│ │ │ │ ║ 192K │1 │ ╙─┴─┴─┴─┴─┴─┴─┴─╜ │ Nя 4 = 256K (ON=0, OFF=1) │ ON ╓1┬2┬3┬4┬5┬6┬7┬8╖ │ Nя 3 = 128K │  ║▀│▄│▄│▀│ │ │ │ ║ 256K │ Nя 2 = 64K │ ╙─┴─┴─┴─┴─┴─┴─┴─╜ │ Nя 1 = 32K │ ON ╓1┬2┬3┬4┬5┬6┬7┬8╖ │1 │  ║▀│▀│▀│▄│ │ │ │ ║ 320K │ Сложите их, добавьте 64K (0ная плата RAM) │ ╙─┴─┴─┴─┴─┴─┴─┴─╜ │ и Mите общую ^в 0е. │ ON ╓1┬2┬3┬4┬5┬6┬7┬8╖ └1─┘  ║▀│▄│▀│▄│ │ │ │ ║ 384K ╙─┴─┴─┴─┴─┴─┴─┴─╜ ON ╓1┬2┬3┬4┬5┬6┬7┬8╖  ║▀│▀│▄│▄│ │ │ │ ║ 448K ╙─┴─┴─┴─┴─┴─┴─┴─╜ ON ╓1┬2┬3┬4┬5┬6┬7┬8╖  ║▀│▄│▄│▄│ │ │ │ ║ 512K ╙─┴─┴─┴─┴─┴─┴─┴─╜ ON ╓1┬2┬3┬4┬5┬6┬7┬8╖  ║▄│▄│▄│▄│ │ │ │ ║ 544K ╙─┴─┴─┴─┴─┴─┴─┴─╜┌ ─┐│ PC-2 SW2 (0гая плата RAM) │ Эти Yи - жболее поздних ╝й└ ─┘ PC (известных МPC-2), Oющих иметь256K на 0ной плате. Они Eменимы же к PC-1 (64K 0ная плата), ав 0е лена более поздняя ╝я ╙-·. ау вас есть самоЭ-жаемый ый иФшасси :ения IBM, значит, вы имеете PC-2 ╙S.Максимальная ^жй модели - 640K. SW2 (PC-2) ON ╓1┬2┬3┬4┬5┬6┬7┬8╖ Ье: на PC-2, Nи 6-8 SW2 ┤OFF.  ║▀│▀│▀│▀│▀│ │ │ ║ 64K ╙─┴─┴─┴─┴─┴─┴─┴─╜ ON ╓1┬2┬3┬4┬5┬6┬7┬8╖ ┌1─┐  ║▀│▄│▀│▀│▀│ │ │ ║ 128K │ Yи задают двоичное 32K-╟овых│ ╙─┴─┴─┴─┴─┴─┴─┴─╜ │ ┼ов, Eчем OFF задает 1, ON - 0. не │ ON ╓1┬2┬3┬4┬5┬6┬7┬8╖ │ обращаться к схеме, просто запомните: │  ║▀│▀│▄│▀│▀│ │ │ ║ 192K │1 │ ╙─┴─┴─┴─┴─┴─┴─┴─╜ │ Nя 5 = 512K (ON=0, OFF=1) │ ON ╓1┬2┬3┬4┬5┬6┬7┬8╖ │ Nя 4 = 256K │  ║▀│▄│▄│▀│▀│ │ │ ║ 256K │ Nя 3 = 128K │ ╙─┴─┴─┴─┴─┴─┴─┴─╜ │ Nя 2 = 64K │ ON ╓1┬2┬3┬4┬5┬6┬7┬8╖ │ Nя 1 = 32K │  ║▀│▀│▀│▄│▀│ │ │ ║ 320K │1 │ ╙─┴─┴─┴─┴─┴─┴─┴─╜ │ Сложите их, добавьте 64K и Mите общую RAM. │ ON ╓1┬2┬3┬4┬5┬6┬7┬8╖ └1─┘  ║▀│▄│▀│▄│▀│ │ │ ║ 384K ╙─┴─┴─┴─┴─┴─┴─┴─╜ ON ╓1┬2┬3┬4┬5┬6┬7┬8╖  ║▀│▀│▄│▄│▀│ │ │ ║ 448K ╙─┴─┴─┴─┴─┴─┴─┴─╜ ON ╓1┬2┬3┬4┬5┬6┬7┬8╖  ║▀│▄│▄│▄│▀│ │ │ ║ 512K ╙─┴─┴─┴─┴─┴─┴─┴─╜ ON ╓1┬2┬3┬4┬5┬6┬7┬8╖  ║▀│▀│▀│▀│▄│ │ │ ║ 576K ╙─┴─┴─┴─┴─┴─┴─┴─╜ ON ╓1┬2┬3┬4┬5┬6┬7┬8╖  ║▀│▄│▀│▀│▄│ │ │ ║ 640K ╙─┴─┴─┴─┴─┴─┴─┴─╜Ье: ка Yей _┤была сущим бедствием жполь-зователей со ╖изобретения PC. аYи стоят не , вы Mитенеисправимую aу _, и вам Eдется выключать компьютер и переЭжать-ся. Проблема осложняется тем, ├о плат _имеют свои собственныеYи, Вые же ены └правильно лены.Полезный Eем состоит в том, вы ете небольшое Це, ║ае-те компьютер и Щаете CHKDSK, убедиться, ╡в порядке. Чза-даете большее Це, и повторяете т ?, пока не возникsaа.Между прочим, авы покажете больше 640K, ·┬счастлив, но эзагsся(транзитная часть Ў.COM Эжается в наивысшие ╩а RAM).P─ Список oя Ця Yей PC Индекс их ┼ов у ч5 ┐ч#║#╛6#Ш$Yи XTМодель ■XT■ имеет единственный ┼DIP Yей: SW1 (XT)ON ╓1┬2┬3┬4┬5┬6┬7┬8╖  ║▄│ │ │ │ ║ ╙╥┴╥┴─┴─┴─┴─┴─┴─╜ ║ ║ ╚╦╝ ╚╦╝ ╚═╩═ 7-8: флоппи-иоводы ║ ║ ║ ╚═ 5-6: zльно ╔ный дисплейный } ║ ║ ╚ ═ 3-4: 0ная плата RAM ║ ╚ ═ 2: 8087 ╚═ 1: цикл POST (┤OFF)Nи 2, 5-6 и 7-8 - те же, жмодели PC. См. Yи PC┌─┐│ XT RAM │ XT POST fяет общую 0ную ^, сканируя ╩ное прост-└─┘ ранство RAM в поиске 32K ┼ов (POST в ?е работы выдает rаэтих ┼ов на ). Пому вам не требуется Хять положение переключате-лей, Ивы добавляете Фудаляете дые платы _. Более того,вы не обязаны полностью забивать 0ную плату (сверх 128K), жтого подключить дые платы _.Yи 3-4 описывают ^на 0ной плате XT:& ▀ SW1 (XT)ON ╓1┬2┬3┬4┬5┬6┬7┬8╖  ║ │ │▄│▀│ │ │ │ ║ 128K ╙─┴─┴─┴─┴─┴─┴─┴─╜ON ╓1┬2┬3┬4┬5┬6┬7┬8╖  ║ │ │▀│▄│ │ │ │ ║ 192K ╙─┴─┴─┴─┴─┴─┴─┴─╜ON ╓1┬2┬3┬4┬5┬6┬7┬8╖  ║ │ │▄│▄│ │ │ │ ║ 256K ╙─┴─┴─┴─┴─┴─┴─┴─╜P─ Список oя Yи PC Индекс их ┼ов у ╜>ч ╜%├)║)╛6)Ш*Yи ATМодель ▌AT▐ не имеет ┼ов DIP Yей. Конфигурация oя уста-навливается Aой SETUP, ║енной в состав иеты DIAGNOSTICS.См. CMOS-^на предмет дой Пи.AT имеет две опции на 0ной плате, Вые ются Eпомощифизических Yей.Соединение с меткой J18, расположенное на Zней стороне 0ной платы,возкует на Оование RAM-_0ной платы. ╔J18╗1 ║┌┐║ РАЗРЕШИТЬ Оование второго 256K ┼а (512K на 0ной плате)2 ║└┘║3 ║  ║ ╚═══╝ ╔J18╗1 ║  ║2 ║┌┐║3 ║└┘║ ЗАПРЕТИТЬ Оование второго 256K ┼а (256K на 0ной плате) ╚═══╝Одинарный скользящий Yь сзади 0ной платы, с меткой SW1, опреде-ляет zльный дисплейный ╦. Он Оуется Aой POST , но имеетсмысл лишь тогда, ИCMOS-^(+ащая полный список oя)потеряла питание Фсбилась по иной Eчине. Иными словами, т Yьет [ичный дисплейный ╦, Вый ┬Оовать AаSETUP. ╔SW1╗ ║▐█▌║ ON ON (к заду)  ной ний ╦(CGA) [ичен ║ ║ OFF ╚═══╝ ╔SW1╗ ║ ║ ON ║▐█▌║ OFF OFF (к Zу) |ый ╦(MDA) [ичен ╚═══╝Ье: Случай ф противоречит му, считая положение OFF жодного CGA и ON жлюбого другого ╦а Фкомбинации ╦ов. Заметьте  жсебя!P─ Список oя Yи PC Индекс их ┼ов ├-─&3├C ▐;J ЗM║M╛6MШNYи фDIP-Yи сзади ф ют, Мой дисплейный }Eсоединен кплате, и Мие другие ╦ы (аесть) подключены к 0е в то же ╢.Эти Yи отображаются в _. См. pи мх ф!ует один ОЧЕНЬ ОПАСНЫЙ момент: ниИне ║айте |ый (TTL)}IBM в ╦ф, аYи не лены корректным образом.Неправильное положение Yей физически исJит }!В .ей  е, "[ичный" обозzет ╦/}, Вый ╔изи-руется [ым E║ении компьютера. "Вторичный" обозzет необязательныйвторой ╦/}, Вый └подключен.ON ╓4┬3┬2┬1╖ [ичный ф, 40x25  ной }  ║▀│▄│▄│▀║ Вторичный MDA ╙─┴─┴─┴─╜ON ╓4┬3┬2┬1╖ [ичный ф, 80x25  ной }  ║▀│▄│▄│▄║ Вторичный MDA ╙─┴─┴─┴─╜ON ╓4┬3┬2┬1╖ [ичный ф, :енный  ной }(эмуляция CGA)  ║▄│▀│▀│▀║ Вторичный MDA ╙─┴─┴─┴─╜ON ╓4┬3┬2┬1╖ [ичный ф, :енный  ной }(лучшее разрешение)  ║▄│▀│▀│▄║ Вторичный MDA ╙─┴─┴─┴─╜ON ╓4┬3┬2┬1╖ [ичный ф, |ый }  ║▄│▀│▄│▀║ Вторичный CGA, 40x25  ной } ╙─┴─┴─┴─╜ON ╓4┬3┬2┬1╖ [ичный ф, |ый }  ║▄│▀│▄│▄║ Вторичный CGA, 80x25  ной } ╙─┴─┴─┴─╜ON ╓4┬3┬2┬1╖ [ичный MDA  ║▀│▀│▀│▀║ Вторичный ф, 40x25  ной } ╙─┴─┴─┴─╜ON ╓4┬3┬2┬1╖ [ичный MDA  ║▀│▀│▀│▄║ Вторичный ф, 80x25  ной } ╙─┴─┴─┴─╜ON ╓4┬3┬2┬1╖ [ичный MDA  ║▀│▀│▄│▀║ Вторичный ф, :енный  ной }(эмуляция CGA) ╙─┴─┴─┴─╜ON ╓4┬3┬2┬1╖ [ичный MDA  ║▀│▀│▄│▄║ Вторичный ф, :енный  ной }(лучшее разрешение) ╙─┴─┴─┴─╜ON ╓4┬3┬2┬1╖ [ичный CGA, 40x25  ной }  ║▀│▄│▀│▀║ Вторичный ф, |ый } ╙─┴─┴─┴─╜ON ╓4┬3┬2┬1╖ [ичный CGA, 80x25  ной }  ║▀│▄│▀│▄║ Вторичный ф, |ый } ╙─┴─┴─┴─╜┌─┐│ фсоединения │ Три соединения на ф управляют =ми средствами на└─┘ плате. Соединения Оуются .им образом: ╔P1═╗ 1 ║┌┐║ Rивает :енный  ной }(640x350 и 64  а) 2 ║└┘║ 3 ║  ║ ╚═══╝ ╔P1═╗ 1 ║  ║ 2 ║┌┐║ 3 ║└┘║ Rивает  ной }(640x200 и 16  ов) ╚═══╝ P2 - соединитель жсветового пера. ╔P3═╗ 1 ║┌┐║ Уст. Jы в/в фна 3xxH (нормальное Це) 2 ║└┘║ 3 ║  ║ ╚═══╝ ╔P3═╗ 1 ║  ║ 2 ║┌┐║ 3 ║└┘║ Уст. Jы в/в фна 2xxH НЕ ПОДДЕРЖИВАЕТСЯ ф · ╚═══╝P─ Список oя Yи PC Индекс их ┼ов  Ж З┬ ▐╒─:енный ний ╦(ф)ф, вообще говоря, ,снизу вверх с CGA ( ным ним ╦ом)и MDA (|ым дисплейным ╦ом), но он имеет много дых воз-~стей, Вые делают его значительно более удобным жмногих Dй.В эти средства │ят: и графика высокого разрешения  64  а в 8ах а и графики графика на |ом }е  гладкое листание (на уровне точек) Aные фонты в овых 8ах  аппаратное расщепление а одно╖ное Оование разных фонтов.ие темы фрассматриваются здесь: ╗8ы  . ║ает 8ы ф ф · . 'ые средства ф, вные  ╙-· Yи ф . эти непонятные Yи сзади ╦а Jы в/в ф . ╩а Jов в/в; 9ы ╗Длера pь мх ·. ║ает ф-cе Xые в _ pи мх ф ... "ы Понных ┼ов ф  / З8Е3┬3 Ж; ЗERЧ?bЧg Зg▐ g┬6g ╒Jg├hpи мх ф Эти поля мх fяются Eке ф ·.┌─┐│ ф Смешанная Пя │ ╟ы по ╩ам 0:0487 и 0:0488 +ат ╞овые└─┘ и, Вые +ат Пю, касающуюсясостояния ф. ├о их └Mено  ┌10H Q. 12H.╓7┬6┬5┬4┬3┬2┬1┬0╖║ │RAM│ │ │ │ │ ║ 0:0487 ── фсмешанная Пя╙╥┴─┴─┴─┴╥┴╥┴╥┴╥╜ ╞ ║ ╚╦╝ ║ ║ ║ ╚═ 0: 1=эмуляция Ба разрешена ║ ║ ║ ║ ╚═══ 1: 1=фEсоединен к |ому дисплею ║ ║ ║ ╚═ 2: 1=жль обратного хода; 0=~┤Sв ╗RAM ║ ║ ╚═ 3: 1=фне ╔ен ║ ╚ ═ 5-6: ф╡го RAM (00=64K; 01=128K; 10=192K; 11=246K) ╚═ 7: старший ╞╗8а (1=не очищен)╓7┬6┬5┬4┬3┬2┬1┬0╖║средств│ DIPы ║ 0:0488 ── фсмешанная Пя, проеение╙─┴─┴─┴─┴─┴─┴─┴─╜ ╞ ╚══╦══╝ ╚═╩═ 0-3: DIP Yи. См. Yи ф ╚ ═ 4-7: ╞ы средств.┌─┐│ ф SAVE_PTR (0:04a8) │ 4-╟овый тель в 0:04a8 назван SAVE_PTR└─┘ кем-то, не имеющим воображения. Он ет на у телей ┼ов мх ф. Вы е пере╩овать т ╛надругую pь мх, в Вой вы задаете свои собственные фонты и опции.lо копируют в свою pь ую  у, а ЧХяют то, надо.Вы е сделать вашу  у мх ф6ной, она Ооваласьнезависимо от Хения ╗8ов.-. за +имое▀ ▀ C▀ ┌─┬─┐ +0 4 │ -. 4│ ╩ ы ╗\ов ф ├───┴───┼───┴───┤ +4 4 │ -. 4│ ╩pи (ения динамических \ов ├───┴───┼───┴───┤ +8 4 │ -. 4│ ╩инф. о доп. фонтах ового 8а ├───┴───┼───┴───┤+0cH 4 │ -. 4│ ╩инф. о доп. фонтах ного 8а ├───┴───┴───┴───┼ ─┐+10H 0cH │ 3 dword-╩а │ 7 └─┘┌─┐│ ╗\ы ф│ т ╩обязателен. [оzльно ет на таб-└─┘ лицу в ╙.  а ена иметь зу 1472 ╟а, -по 64 ╟а жНого из 23 =х ╗8ов. В й  е \ов8ы 0-10H перечислены в ╗8ах жфс 64K. 8ы 11H-12H служатж350-строчной графики с 128K+ на плате. 8ы 13H-16H - 350-строчные╝и 8ов 0-3 EОовании :енного  ного дисплея.К сожалению, нам неизвестна "а й  ы.┌─┐│ pь сохр. динамич. парам│ Необязательно. ат ╩равен 0:0,└─┘ он не Оуется. Иначе он ет на об-ласть _, в Вой ф ·┬отображать vые Ця, посы-лаемые в 9ы Jов в/в. Эта pь имеет .ую "у: -. за +имое ▀ ▀ 4▀ +0 10H ╟овые Ця ж16 9ов палитры +10H 1 9 а бордюра +11H 0efH 7( ы ены иметь зу 100H)┌ ─┐│ обл. доп. фонтов . 8а │ Необязательно. а0:0, не Оует-└ ─┘ ся. Иначе т ╩ет на  умх, Оуемую жгенерации 1ов в )ующих овых 8ах.Вы ┬е Оовать т ╛жки собственных фонтов. -. за +имое ▀ ▀ 4▀ +0 1 ╟на 1в eии фонта +1 1 RAM ┼жЭзки (0 жlой iи) +2 2 Эжаемых 1ов (lо ╡256) +4 2 -ение 1а (lо 0 жполного фонта) +6 4 DWORD-╩ ы фонта  а фонта - 256 8- Ф14-╟овых групп (группа )ует 1у). См. ┌1fH +0aH 1 #на е (исп. 0ffH, ·сам выяснил точное ) +0bH 1-? один Фt╟, ющих, к Мим текс- товым 8ам Eменима  а. йте 0ffH в конце списка.┌!─┐│ обл. доп. фонтов графич. 8а │ Необязателен. а0:0, не Оует-└!─┘ ся. Иначе т ╩ет на  умх, Оуемую жгенерации 1ов в )ующих них8ах. -. за +имое ▀ ▀ 4▀ +0 1 #на е +1 2 ╟на 1 +3 4 DWORD-╩ ы фонта. См. ┌1fH +7 1-? один Фt╟, ющих, к Мим текс- товым 8ам Eменима  а. йте 0ffH в конце списка.P─ ф · ф Jы в/в ф Yи ме · ф ╞*╟ ╚ ╔ ╩ ╦╠═Набор Сй 8088/8086/286  а Сй Си с дым Зом iи Си по  ональным группам: Арифметика Zача мх е пением е ?ором е защитой (80286) #овые iи #у╟╟╟ ╟(╟(╟+╟+╟+╟ +╟<1╟E1╟;f╟Df╟;k┼l а Сй * озzет ▌286▐ (невно ж8088/8086). ╔═╤═╤═╤═╤═╤═╤═╤═╕ ║ x0 │ x1 │ x2 │ x3 │ x4 │ x5 │ x6 │ x7 │═══╬═╪═╪═╪═╪═╪═╪═╪═╡0x ║ ADD │ ADD │ ADD │ ADD │ ADD │ ADD │ PUSH │ POP │ ║ r/m,r8 │r/m,r16 │ r8,r/m │r16,r/m │ AL,im8 │AX,im16 │ ES │ ES │───╫─┼─┼─┼─┼─┼─┼─┼─┤1x ║ ADC │ ADC │ ADC │ ADC │ ADC │ ADC │ PUSH │ POP │ ║ r/m,r8 │r/m,r16 │ r8,r/m │r16,r/m │ AL,im8 │AX,im16 │ SS │ SS │───╫─┼─┼─┼─┼─┼─┼─┼─┤2x ║ AND │ AND │ AND │ AND │ AND │ AND │ SEG │ DAA │ ║ r/m,r8 │r/m,r16 │ r8,r/m │r16,r/m │ AL,im8 │AX,im16 │ ES │ │───╫─┼─┼─┼─┼─┼─┼─┼─┤3x ║ XOR │ XOR │ XOR │ XOR │ XOR │ XOR │ SEG │ AAA │ ║ r/m,r8 │r/m,r16 │ r8,r/m │r16,r/m │ AL,im8 │AX,im16 │ SS │ │───╫─┼─┼─┼─┼─┼─┼─┼─┤4x ║ INC │ INC │ INC │ INC │ INC │ INC │ INC │ INC │ ║ AX │ CX │ DX │ BX │ SP │ BP │ SI │ DI │───╫─┼─┼─┼─┼─┼─┼─┼─┤5x ║ PUSH │ PUSH │ PUSH │ PUSH │ PUSH │PUSH │ PUSH │ PUSH │ ║ AX │ CX │ DX │ BX │ SP │BP │ SI │ DI │───╫─┼─┼─┼─┼─┼─┼─┼─┤6x ║* PUSHA │* POPA │* BOUND │ │ │ │ │ │ ║ │ │ │ │ │ │ │ │───╫─┼─┼─┼─┼─┼─┼─┼─┤7x ║ JO │ JNO │ JB/ │ JNB/ │ JE/ │ JNE/ │ JBE/ │ JNBE/ │ ║ │ │ JNAE │ JAE │ JZ │ JNZ │ JNA │ JA │───╫─┼─┼─┼─┼─┼─┼─┼─┤8x ║ ArOp1 │ ArOp1 │ ArOp2 │ ArOp2 │ TEST │ TEST │ XCHG │ XCHG │ ║r/m,im8 │r/m,im16│r/m8,im8│rm16,im8│r/m,r8 │r/m,r16 │r8,r/m │r16,r/m │───╫─┼─┼─┼─┼─┼─┼─┼─┤9x ║ NOP │ XCHG │ XCHG │ XCHG │ XCHG │ XCHG │ XCHG │ XCHG │ ║ │ AX,CX │ AX,DX │ AX,BX │ AX,SP │ AX,BP │ AX,SI │ AX,DI │───╫─┼─┼─┼─┼─┼─┼─┼─┤Ax ║ MOV │ MOV │ MOV │ MOV │ MOVSB │ MOVSW │ CMPSB │ CMPSW │ ║AL,mem8 │AX,mem16│mem8,AL │mem16,AX│ │ │ │ │───╫─┼─┼─┼─┼─┼─┼─┼─┤Bx ║ MOV │ MOV │ MOV │ MOV │ MOV │ MOV │ MOV │ MOV │ ║ AL,im8 │ CL,im8 │ DL,im8 │ BL,im8 │ AH,im8 │ CH,im8 │ DH,im8 │ BH,im8 │───╫─┼─┼─┼─┼─┼─┼─┼─┤Cx ║* ShfOp │* ShfOp │RET near│RET near│ LES │ LDS │ MOV │ MOV │ ║r/m8,imm│r/m16,im│ ёim16 │ │r16,mem │r16,mem │mem,im8 │mem,im16│───╫─┼─┼─┼─┼─┼─┼─┼─┤Dx ║ ShftOp │ ShftOp │ ShftOp │ ShftOp │ AAM │ AAD │ │ XLAT │ ║r/m8,1 │r/m16,1 │r/m8,CL │r/m16,CL│ │ │ │ │───╫─┼─┼─┼─┼─┼─┼─┼─┤Ex ║ LOOPNE/│ LOOPE/ │ LOOP │ JCXZ │ IN │ IN │ OUT │ OUT │ ║ LOOPNZ │ LOOPZ │ │ │AL,╘8│AX,╘8│AL,╘8│AX,╘8│───╫─┼─┼─┼─┼─┼─┼─┼─┤Fx ║ LOCK │ │ REP/ │ REPZ/ │ HALT │ CMC │ Grp1 │ Grp1 │ ║ │ │ REPNE │ REPE │ │ │r/m8 │r/m16 │═══╬═╪═╪═╪═╪═╪═╪═╪═╡ ║ x0 │ x1 │ x2 │ x3 │ x4 │ x5 │ x6 │ x7 │ ╚═╧═╧═╧═╧═╧═╧═╧═╛ ╔═╤═╤═╤═╤═╤═╤═╤═╕ ║ x8 │ x9 │ xA │ xB │ xC │ xD │ xE │ xF │═══╬═╪═╪═╪═╪═╪═╪═╪═╡0x ║ OR │ OR │ OR │ OR │ OR │ OR │ PUSH │*Prtectd│ ║ r/m,r8 │r/m,r16 │ r8,r/m │r16,r/m │ AL,im8 │AX,im16 │ CS │ ╓Op│───╫─┼─┼─┼─┼─┼─┼─┼─┤1x ║ SBB │ SBB │ SBB │ SBB │ SBB │ SBB │ PUSH │ POP │ ║ r/m,r8 │r/m,r16 │ r8,r/m │r16,r/m │ AL,im8 │AX,im16 │ DS │ DS │───╫─┼─┼─┼─┼─┼─┼─┼─┤2x ║ SUB │ SUB │ SUB │ SUB │ SUB │ SUB │ SEG │ DAS │ ║ r/m,r8 │r/m,r16 │ r8,r/m │r16,r/m │ AL,im8 │AX,im16 │ CS │ │───╫─┼─┼─┼─┼─┼─┼─┼─┤3x ║ CMP │ CMP │ CMP │ CMP │ CMP │ CMP │ SEG │ AAS │ ║ r/m,r8 │r/m,r16 │ r8,r/m │r16,r/m │ AL,im8 │AX,im16 │ DS │ │───╫─┼─┼─┼─┼─┼─┼─┼─┤4x ║ DEC │ DEC │ DEC │ DEC │ DEC │ DEC │ DEC │ DEC │ ║ AX │ CX │ DX │ BX │ SP │ BP │ SI │ DI │───╫─┼─┼─┼─┼─┼─┼─┼─┤5x ║ POP │ POP │ POP │ POP │ POP │POP │ POP │ POP │ ║ AX │ CX │ DX │ BX │ SP │BP │ SI │ DI │───╫─┼─┼─┼─┼─┼─┼─┼─┤6x ║ * PUSH │ * IMUL │ *PUSH │ * IMUL │ * INSB │ *INSW │* OUTSB │* OUTSW │ ║ imm16 │r/m,im16│ imm8 │r/m,im8 │ │ │ │ │───╫─┼─┼─┼─┼─┼─┼─┼─┤7x ║ JS │ JNS │ JP/ │ JNP/ │ JL/ │ JNL/ │ JLE/ │ JNLE/ │ ║ │ │ JPE │ JPO │ JNG │ JGE │ JNG │ JG │───╫─┼─┼─┼─┼─┼─┼─┼─┤8x ║ MOV │ MOV │ MOV │ MOV │ MOV │ LEA │ MOV │ POP │ ║r/m,r8 │r/m,r16 │r8,r/m │r16,r/m │r/m,seg │r16,mem │seg,r/m │ r/m │───╫─┼─┼─┼─┼─┼─┼─┼─┤9x ║ CBW │ CWD │ CALL │ WAIT │ PUSHF │ POPF │ SAHF │ LAHF │ ║ │ │ far │ │ │ │ │ │───╫─┼─┼─┼─┼─┼─┼─┼─┤Ax ║ TEST │ TEST │ STOSB │ STOSW │ LODSB │ LODSW │ SCASB │ SCASW │ ║AL,mem8 │AX,mem16│ │ │ │ │ │ │───╫─┼─┼─┼─┼─┼─┼─┼─┤Bx ║ MOV │ MOV │ MOV │ MOV │ MOV │ MOV │ MOV │ MOV │ ║AX,im16 │CX,im16 │DX,im16 │BX,im16 │SP,im16 │BP,im16 │SI,im16 │DI,im16 │───╫─┼─┼─┼─┼─┼─┼─┼─┤Cx ║* ENTER │* LEAVE │RET far │RET far │ ┌3 │ ┌ │ ┌O │ IRET │ ║im16,im8│ │ ёim16 │ │ │ im8 │ │ │───╫─┼─┼─┼─┼─┼─┼─┼─┤Dx ║ ESC 0 │ ESC 1 │ ESC 2 │ ESC 3 │ ESC 4 │ ESC 5 │ ESC 6 │ ESC 7 │ ║ │ │ │ │ │ │ │ │───╫─┼─┼─┼─┼─┼─┼─┼─┤Ex ║ CALL │ JMP │ JMP │ JMP │ IN │ IN │ OUT │ OUT │ ║ near │ near │ far │ short │ AL,DX │ AX,DX │ AL,DX │ AX,DX │───╫─┼─┼─┼─┼─┼─┼─┼─┤Fx ║ CLC │ STC │ CLI │ STI │ CLD │ STD │ Grp2 │ Grp3 │ ║ │ │ │ │ │ │ r/m8 │ r/m16 │═══╬═╪═╪═╪═╪═╪═╪═╪═╡ ║ x8 │ x9 │ xA │ xB │ xC │ xD │ xE │ xF │ ╚═╧═╧═╧═╧═╧═╧═╧═╛< Набор Сй '╞<┼Си со вторичным Зом iиВ й  е показаны iи жтех групп Сй, Вые +ат Зiи в ╞ах 3-5 второго ╟а (где lо ется 8╩ации). ╔═╤═╤═╤═╤═╤═╤═╤═╕ ║md000r/m│md001r/m│md010r/m│md011r/m│md100r/m│md101r/m│md110r/m│md111r/m│═╬═╪═╪═╪═╪═╪═╪═╪═╡ArOp1 ║ ADD │ OR │ ADC │ SBB │ AND │ SUB │ XOR │ CMP │─╫─┼─┼─┼─┼─┼─┼─┼─┤ArOp2 ║ ADD │ │ ADC │ SBB │ │ SUB │ │ CMP │─╫─┼─┼─┼─┼─┼─┼─┼─┤ShftOp ║ ROL │ ROR │ RCL │ RCR │SHL/SAL │ SHR │ │ RAR │─╫─┼─┼─┼─┼─┼─┼─┼─┤Grp1 ║ TEST │ │ NOT │ NEG │ MUL │ IMUL │ DIV │ IDIV │─╫─┼─┼─┼─┼─┼─┼─┼─┤Grp2 ║ INC │ DEC │CALLnear│CALL far│JMP near│JMP far │ PUSH │ │─╫─┼─┼─┼─┼─┼─┼─┼─┤Grp3 ║ INC │ DEC │ │ │ │ │ │ │═╩═╧═╧═╧═╧═╧═╧═╧═╛'  а Сй Набор Сй G(у?E┼FАрифметические СиADD щ,src сложить два операнда, помещая 5ат в щ щ(src + щ)ADC щ,src сложить два операнда, учитывая перенос из предыдущего ADD щ(src + щ+ CF)INC щ Eбавить 1 кo щ(reg Фr/m) щ(щ+1)SUB щ,src вычесть src из щ, оставляя 5ат в щ щ(щ- src)SBB щ,src вычитание с заемом (carry-) у предыдущего SUB щ((щ- src) - CF)DEC щ вычесть 1 из щ(reg Фr/m) щ(щ- 1)CMP щ,src сравнение (неразрушающее вычитание) и отражают перенос, Uе и т.п.NEG щ Хить знак операнда щ(0 - щ);AAA подгонка I■-сложения AL(AL исправленный ж■-сложения)AAS подгонка I■-вычитания AL(AL исправленный ж■-вычитания)AAM подгонка I■-умножения AH:AL(AH:AL испр. ж■-умножения)AAD подгонка Z■-делением AH:AL(AH:AL подготовл. жделения Зов ■)DAA подгонка IBCD-сложения AL(AL испр. жBCD-сложения)DAS подгонка жBCD-вычитания AL(AL испр. жBCD-вычитания)MUL src умножить AL(AX) на Це без знака (reg/mem) AX(AL * src8) DX:AX(AX * src16)IMUL src умножить AL(AX) на целое со знаком (reg/mem) AX(AL * immed8) DX:AX(AX * immed16)IMUL reg16,r/m,immed умнож. reg/mem на 16-╞. непоср. со знаком ▌286▐ reg16(r/m8 * immed) reg16(r/m16 * immed)DIV src >ить аккумулятор на Це без знака (reg/mem) Деление на 0 ФUе 5ата ░ют ┌0. AL(AX Ў src8); AH(AX MOD src8) AX(DX:AX Ў src16); DX(DX:AX MOD src16)IDIV src >ить аккумулятор на Це без знака (reg/mem)CBW конвертировать ╟в слово (:ить знак AL в AH) AH(заполнен ╞ом 7 из AL)CWD конвертировать word в dword (:ить знак AX в DX) DX(заполнен ╞ом 15 из AX)AND щ,src Аое И (маска; сброс ╞ов щ, равных 0 в src) щ(щ& src)TEST щ,src неразрушающее И (Bка ╞ов; TJZ по несовп.) и(Мжщ& src)OR щ,src ║ающее ИЛИ (ка ╞ов щ, равных 1 в src) щ(щ| src)XOR щ,src исключающее ИЛИ (ин╝я ╞ов щ, равных 1 в src) щ(щ^ src)NOT щ дополнение до единиц (инвертирование ╡х ╞ов в щ) щ(~щ)P─? Набор Сй /уC уC)у/═?/┼0Си Zачи мхMOV щ,src переслать ме в/из 9а, в/из _ щsrcXCHG щ,src обменять Ця двух 9ов Ф9а и r/m щ srcIN ╘8 (ФDX) ┐в AL(ФAX) из Jа в/в ╟: ALJ слово: AL[J]; AH[J+1]OUT ╘8 (ФDX) ▓из AL(ФAX) в Jв/в ╟: [J]AL слово: [J]AL [J+1]AHXLAT транслировать AL согласно  е трансляции в BX ALES:[BX+(AL)]LEA reg16,addr Эзить ╩в 9 reg16(5ат вычисления исполнительного ╩а)LDS reg16,mem Эзить DS и reg16 из поля _ reg16em16]; DSem16+2]LES reg16,mem Эзить ES и reg16 из поля _ reg16em16]; ESem16+2]LAHF Эзить и в AHSAHF Kь AH в иPUSH src переслать reg16 Фr/m16 в стек SP-=2; SS:[SP]srcPUSH immed переслать immed16 (Ф:ение со знаком immed8) в стек. SP-=2; SS:[SP]immed16 ▌286▐ .PUSHA PUSH ALL: скопировать общие 9ы в стек. ▌286▐ . SP-=10H; AX,BX,CX,DX,SI,DI,BP,SP (яются в стекеPUSHF PUSH Flags: переслать 9ов в стек SP-=2; SS:[SP]иPOP щ переслать из стека в reg16 Фr/m16 Фsegreg щSS:[SP]; SP+=2POPA POP All: скопировать общие 9ы из стека. ▌286▐ . SP+=10H; AX,BX,CX,DX,SI,DI,BP ╕ются из стекаPOPF POP Flags: переслать из стека в 9ов flagsSS:[SP]; SP+=2P─ Си #овых iй! Набор Сй A#у4'у?:┼;Си я пениемJMP target безусловная Zача я на метку short: IP(IP+(-ение цели, :енное со знаком) near: IP(IP+(-ение цели) indirect: IP(9ФЦе в _) far: SSцелевой_4; IPцелевое_-ениеJCXZ short_label TаCX==0LOOP short_label CX(CX-1) TаCX!=0LOOPE/ short_label CX(CX-1) TаCX!=0 && ZF==ZR==1 LOOPZLOOPNE/ short_label CX(CX-1) TаCX!=0 && ZF==NZ==0 LOOPNZJcond short_label TEудовлетворении условия IP(IP+(8-╞овое -ение, :енное со знаком до 16))JA/JNBE short_label Tавыше ((CF & ZF)==0 Iбеззнак ариф)JAE/JNB short_label Tавыше/равно (CF==NC==0 Iбеззнак ариф)JB/JC short_label Tаниже/TаCarry (CF==CY==1)JE/JZ short_label Tаравно (ZF==ZR==1)JG/JNGE short_label Tабольше (SF==(OF & ZF) Iзнак ариф)JGE/JNL short_label Tабольше/равно (SF==OF Iзнак ариф)JL/JNGE short_label Tаменьше (ZF != OF Iзнак ариф)JLE/JNG short_label Tаменьше/равно (SF!=OF || ZF==0 Iзнак ариф)JNC short_label Tане Carry (CF==NC==0) (то же, JAE/JNB)JNE/JNZ short_label Tане равно (ZF==NZ==0)JNO short_label Tане Uе (OF==NO==0)JNP/JPO short_label Tанечет (PF==PO==0: 1-╞ов НЕЧЕТНО)JNS short_label Tане знак (SF==PL==0: -- старший ╞щ)JO short_label TаUе (OF==OV==1)JP/JPE short_label Tачет(PF==PE==1 1-╞ов ЧЕТНО)JS short_label Tазнак (SF==NG==1: -- старший ╞щ)BOUND reg16,lmts Bить диапазон жreg16. 'lmts' - ╩2-словной  ы с замми границами min/max. ▌286▐ . а(reg16DS:[lmts+2]) то ┌5ENTER frmsiz,frms уст. фрейм стека языка высокого уровня. [ая iя в ░емой (CALL) процедуре. ▌286▐ . То же, и: PUSH BP; (повторить frms раз) MOV BP,SP; PUSH SP; SUB SP,frmsize ;(;ить динамич. ^в стеке)LEAVE отменить кие ENTER. Оуется ZRET. ╕ет SP и BP к Цям ZENTER.┌type пить Aное Fе (▒0ной  ) PUSHF; IF0; TF0; PUSH CS; PUSH IP IP 0:[type * 4]; CS  0:[(type * 4) + 2]┌O type аOF==OV==1, то пить ┌typeIRET ╣т из Fя. кие эквивалентно .ему: POP IP; POP CS; POPFP─? Набор Сй . у?┼Си я ?оромCLC очистить переноса! (CF0)CMC инвертировать Це а переноса (CF ~CF)STC взвести переноса" (CF1)CLD очистить направления (автоинкремент #) (DF0)STD взвести направления (автодекремент #) (DF1)CLI запретить маскируемые аппаратные Fя (IF0)STI разрешить маскируемые аппаратные Fя (IF1)CTS взвести переключения задач. ▌286▐ . (TF1)HLT остановить работу ?ора (жль Fя)WAIT/FWAIT жль ╔ности TEST-линии (синхронизация с со?ором)LOCK (префикс) предотвратить выборку со?ором .ей СиSEG segreg (префикс) перекрыть ый segreg жочередного вычисления EAP─? Набор Сй .у?┼Си я защитой╡Си здесь кительны ж▌286▐ (невны на 8088/86)LGDT src Эзить  у глобальных йов (GDT) из src (6 ╟)SGDT щ Kь 6-╟овую GDT в ^по ╩у щLIDT src Эзить  у йов Fй (IDT) из src (6 ╟)SIDT щ Kь 6-╟овую IDT в ^по ╩у щLLDT src Эзить  у локальных йов (LDT) из reg/mem16SLDT щ Kь 9LDT в щ(r/m16)LMSW src Эзить слово состояния машины (MSW) (жзащищенного 8а)SMSW src Kь MSW в reg/mem16LTR src Эзить 9задачи (TR) из reg/mem16STR щ Kь TR в reg/mem16LAR щ,src Эзить в старший ╟щправа ва из йа srcLSL щ,src Эзить в щлимит 4ов из йа srcARPL lvl Eвести уровень Eвилегий к наибольшему из его и lvlVERR seg уст. ZF=ZR азадача прочитала Eвилегии ж4а segVERR seg уст. ZF=ZR азадача Ыала Eвилегии ж4а segP─? Набор Сй у!у?$┼%Си #овой mкиCLD очистить направления (DFUP0)  (Delta) - положительна, автоинкремент #STD взвести направления (DFDN1)  (Delta) - отрицательна, автодекремент #REP/REPE/REPZ (префикс) повтор: повторять #овую iю CX(CX-1); iя повторяется до момента CX==0REPNE/REPNZ (префикс) повтор: полезно жiй CMPS и SCAS ZF0; CX(CX-1); iя повторяется пока (CX!=0 и ZF==0)MOVSB копировать #у ╟(слов) (╟:=1, слов:=2)MOVSW ES:[DI]DS:[SI]; DI+=; SI+=LODSB копировать #у ╟(слов) в AL(AX) AL  DS:[SI]; SI+=1;LODSW AX  DS:[SI]; SI+=2;STOSB Kь ╟(слово) в #у ES:[DI]AL; DI+=1;STOSW ES:[DI]AX; DI+=2;CMPSB сравнить #и ╟(слов) (╟:=1, слов:=2)CMPSW и(5ат CMP DS:[SI],ES:[DI]); DI+=; SI+=SCASB найти ╟(слово) в #е и(5ат CMP DS:[DI],AL); DI+=1SCASW и(5ат CMP DS:[DI],AX); DI+=2INSB ╟(слово) из Jа в #у (╟:=1, слово:=2)INSW ▌286▐ . ES:[DI](╟/слово из Jа DX); DI+=;OUTSB ╟(слово) из #и в J(╟:=1, слово:=2)OUTSW ▌286▐ . [JDX]DS:[SI]; SI+=;P─? Набор Сй 3╧ '╥ ╢ ╘ ╨ ╤╬#■■ ■- сокращение от ┌─┐ ┌─┐ ┌─┐ ┌─┐ ┌─┐ │A│merican │S│t√ard │C│ode р│I│nрmation │I│nterchange └─┘ └─┘ └─┘ └─┘ └─┘набор условно заЗированных овых и их 1ов. Младшие 128ов набора ■ально eы. Зовые Ця выше 127 (7fH)Рируются =м образом на разных компьютерах, Cах и т.п. ■десятичные, шестнадцатеричные и двоичные Зы Псевдоние и 'ые 1ы :енные Ки ■ Зы Cа Epson/IBM  а 1ов ие Зы#а ■Z (Оуемая во многих  ях эи в языке Aирования'C') представляет собой Hость 1ов ■, заканчивающуюсянулевым ╟ом (00H, 1■NUL). Eмер на ассемблере: DB "myfile.txt",0 Нажмите ж╣та в предыдущий > L╥L╤2L╨GL╬M■: десятичные, шестнадцатеричные и двоичные ЗыASC Dec Hex Binary ASC Dec Hex Binary ASC Dec Hex Binary ASC Dec Hex Binary╒═╤═ ╒═╤═ ╒═╤═ ╒═╤═│ │ 0 00 0 ││ 16 10 00010 │ │ 32 20 0010 │0│ 48 30 00110│ │ 1 01 01 ││ 17 11 00010001 │!│ 33 21 00101 │1│ 49 31 00110001│ │ 2 02 010 ││ 18 12 00010010 │"│ 34 22 00100010 │2│ 50 32 00110010│ │ 3 03 011 ││ 19 13 00010011 │#│ 35 23 00100011 │3│ 51 33 00110011│ │ 4 04 0100 ││ 20 14 00010100 │$│ 36 24 00100100 │4│ 52 34 00110100│ │ 5 05 0101 ││ 21 15 00010101 │%│ 37 25 00100101 │5│ 53 35 00110101││ 6 06 0110 ││ 22 16 00010110 │&│ 38 26 00100110 │6│ 54 36 00110110││ 7 07 0111 ││ 23 17 00010111 │'│ 39 27 00100111 │7│ 55 37 00110111││ 8 08 01000 ││ 24 18 00011000 │(│ 40 28 00101000 │8│ 56 38 00111000│ │ 9 09 01001 ││ 25 19 00011001 │)│ 41 29 00101001 │9│ 57 39 00111001│ │ 10 0a 01010 ││ 26 1a 00011010 │*│ 42 2a 00101010 │:│ 58 3a 00111010│ │ 11 0b 01011 ││ 27 1b 00011011 │+│ 43 2b 00101011 │;│ 59 3b 00111011│ │ 12 0c 01100 ││ 28 1c 00011100 │,│ 44 2c 00101100 │<│ 60 3c 00100│ │ 13 0d 01101 ││ 29 1d 00011101 │-│ 45 2d 00101101 │=│ 61 3d 00101││ 14 0e 01110 ││ 30 1e 00010 │.│ 46 2e 00101110 │>│ 62 3e 0010││ 15 0f 01 ││ 31 1f 0001 │/│ 47 2f 00101 │?│ 63 3f 001└─┘ └─┘ └─┘ └─┘ASC Dec Hex Binary ASC Dec Hex Binary ASC Dec Hex Binary ASC Dec Hex Binary╒═╤═ ╒═╤═ ╒═╤═ ╒═╤═│@│ 64 40 010 │P│ 80 50 01010 │`│ 96 60 0110 │p│112 70 01110│A│ 65 41 0101 │Q│ 81 51 01010001 │a│ 97 61 01101 │q│113 71 01110001│B│ 66 42 01010 │R│ 82 52 01010010 │b│ 98 62 01100010 │r│114 72 01110010│C│ 67 43 01011 │S│ 83 53 01010011 │c│ 99 63 01100011 │s│115 73 01110011│D│ 68 44 01000100 │T│ 84 54 01010100 │d│100 64 01100100 │t│116 74 01110100│E│ 69 45 01000101 │U│ 85 55 01010101 │e│101 65 01100101 │u│117 75 01110101│F│ 70 46 01000110 │V│ 86 56 01010110 │f│102 66 01100110 │v│118 76 01110110│G│ 71 47 01000111 │W│ 87 57 01010111 │g│103 67 01100111 │w│119 77 01110111│H│ 72 48 01001000 │X│ 88 58 01011000 │h│104 68 01101000 │x│120 78 01000│I│ 73 49 01001001 │Y│ 89 59 01011001 │i│105 69 01101001 │y│121 79 01001│J│ 74 4a 01001010 │Z│ 90 5a 01011010 │j│106 6a 01101010 │z│122 7a 01010│K│ 75 4b 01001011 │[│ 91 5b 01011011 │k│107 6b 01101011 │{│123 7b 01011│L│ 76 4c 01001100 │\│ 92 5c 01011100 │l│108 6c 01101100 │|│124 7c 0100│M│ 77 4d 01001101 │]│ 93 5d 01011101 │m│109 6d 01101101 │}│125 7d 0101│N│ 78 4e 01001110 │^│ 94 5e 01010 │n│110 6e 01101110 │~│126 7e 010│O│ 79 4f 01001 │_│ 95 5f 0101 │o│111 6f 01101 ││127 7f 01└─┘ └─┘ └─┘ └─┘ASC Dec Hex Binary ASC Dec Hex Binary ASC Dec Hex Binary ASC Dec Hex Binary╒═╤═ ╒═╤═ ╒═╤═ ╒═╤═│А│128 80 10 │Р│144 90 10010 │а│160 a0 1010 │░│176 b0 10110│Б│129 81 101 │С│145 91 10010001 │б│161 a1 10101 │▒│177 b1 10110001│В│130 82 1010 │Т│146 92 10010010 │в│162 a2 10100010 │▓│178 b2 10110010│Г│131 83 1011 │У│147 93 10010011 │г│163 a3 10100011 │││179 b3 10110011│Д│132 84 10100 │Ф│148 94 10010100 │д│164 a4 10100100 │┤│180 b4 10110100│Е│133 85 10101 │Х│149 95 10010101 │е│165 a5 10100101 │╡│181 b5 10110101│Ж│134 86 10110 │Ц│150 96 10010110 │ж│166 a6 10100110 │╢│182 b6 10110110│З│135 87 10111 │Ч│151 97 10010111 │з│167 a7 10100111 │╖│183 b7 10110111│И│136 88 10001000 │Ш│152 98 10011000 │и│168 a8 10101000 │╕│184 b8 10111000│Й│137 89 10001001 │Щ│153 99 10011001 │й│169 a9 10101001 │╣│185 b9 10111001│К│138 8a 10001010 │Ъ│154 9a 10011010 │к│170 aa 10101010 │║│186 ba 10111010│Л│139 8b 10001011 │Ы│155 9b 10011011 │л│171 ab 10101011 │╗│187 bb 10111011│М│140 8c 10001100 │Ь│156 9c 10011100 │м│172 ac 10101100 │╝│188 bc 10100│Н│141 8d 10001101 │Э│157 9d 10011101 │н│173 ad 10101101 │╜│189 bd 10101│О│142 8e 10001110 │Ю│158 9e 10010 │о│174 ae 10101110 │╛│190 be 1010│П│143 8f 10001 │Я│159 9f 1001 │п│175 af 10101 │┐│191 bf 101└─┘ └─┘ └─┘ └─┘ASC Dec Hex Binary ASC Dec Hex Binary ASC Dec Hex Binary ASC Dec Hex Binary╒═╤═ ╒═╤═ ╒═╤═ ╒═╤═│└│192 c0 110 │╨│208 d0 11010 │р│224 e0 1110 │Ё│240 f0 10│┴│193 c1 1101 │╤│209 d1 11010001 │с│225 e1 11101 │ё│241 f1 10001│┬│194 c2 11010 │╥│210 d2 11010010 │т│226 e2 11100010 │Є│242 f2 10010│├│195 c3 11011 │╙│211 d3 11010011 │у│227 e3 11100011 │є│243 f3 10011│─│196 c4 11000100 │╘│212 d4 11010100 │ф│228 e4 11100100 │Ї│244 f4 10100│┼│197 c5 11000101 │╒│213 d5 11010101 │х│229 e5 11100101 │ї│245 f5 10101│╞│198 c6 11000110 │╓│214 d6 11010110 │ц│230 e6 11100110 │Ў│246 f6 10110│╟│199 c7 11000111 │╫│215 d7 11010111 │ч│231 e7 11100111 │ў│247 f7 10111│╚│200 c8 11001000 │╪│216 d8 11011000 │ш│232 e8 11101000 │°│248 f8 1000│╔│201 c9 11001001 │┘│217 d9 11011001 │щ│233 e9 11101001 │∙│249 f9 1001│╩│202 ca 11001010 │┌│218 da 11011010 │ъ│234 ea 11101010 │·│250 fa 1010│╦│203 cb 11001011 │█│219 db 11011011 │ы│235 eb 11101011 │√│251 fb 1011│╠│204 cc 11001100 │▄│220 dc 11011100 │ь│236 ec 11101100 │№│252 fc 100│═│205 cd 11001101 │▌│221 dd 11011101 │э│237 ed 11101101 │¤│253 fd 101│╬│206 ce 11001110 │▐│222 de 11010 │ю│238 ee 11101110 │■│254 fe 10│╧│207 cf 11001 │▀│223 df 1101 │я│239 ef 11101 │ │255 ff 1└─┴─┴─┴─┴─┴─┴─┴─ Псевдографика и спец1ы ие Зы Набор 1ов ■ ╥ ╧J╬ а набора 1ов ■ 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f 00                10                 20 ! " # $ % & ' ( ) * + , - . / 30 0 1 2 3 4 5 6 7 8 9 : ; < = > ? 40 @ A B C D E F G H I J K L M N O 50 P Q R S T U V W X Y Z [ \ ] ^ _ 60 ` a b c d e f g h i j k l m n o 70 p q r s t u v w x y z { | } ~  80 А Б В Г Д Е Ж З И Й К Л М Н О П 90 Р С Т У Ф Х Ц Ч Ш Щ Ъ Ы Ь Э Ю Я a0 а б в г д е ж з и й к л м н о п b0 ░ ▒ ▓ │ ┤ ╡ ╢ ╖ ╕ ╣ ║ ╗ ╝ ╜ ╛ ┐ c0 └ ┴ ┬ ├ ─ ┼ ╞ ╟ ╚ ╔ ╩ ╦ ╠ ═ ╬ ╧ d0 ╨ ╤ ╥ ╙ ╘ ╒ ╓ ╫ ╪ ┘ ┌ █ ▄ ▌ ▐ ▀ e0 р с т у ф х ц ч ш щ ъ ы ь э ю я f0 Ё ё Є є Ї ї Ў ў ° ∙ · √ № ¤ ■P─ Псевдографика и спец1ы ■10-, 16-, двоичные Зы ■ ╥╧J╬ие Зы ■Dec Hex Ctl У НаЦе ▄ Dec Hex Ctl У НаЦе▀▀▀ ▀▀▀ ▀▀▀ ▀ ▀ █ ▀▀▀ ▀▀▀ ▀▀▀ ▀ ▀ 0 00 ^@ NUL пусто (Е#и) █ 16 10 ^P DLE ыline escape 1 01 ^A SOH zло Юка █ 17 11 ^Q DC1 device Ё1 (X-ON) 2 02 ^B STX zло а █ 18 12 ^R DC2 device Ё2 3 03 ^C ETX Еа █ 19 13 ^S DC3 device Ё3 (X-OFF) 4 04 ^D EOT ЕZачи █ 20 14 ^T DC4 device Ё4 5 05 ^E ENQ Ъс █ 21 15 ^U NAK отриц. подтверждение 6 06 ^F ACK подтверждение █ 22 16 ^V SYN синхронизация 7 07 ^G BEL звонок █ 23 17 ^W ETB Е┼а Zачи 8 08 ^H BS шаг назад █ 24 18 ^X CAN снять 9 09 ^I HT TAB гориз. табуляция █ 25 19 ^Y EM Еqя 10 0a ^J LF перевод #и █ 26 1a ^Z SUB подстановка 11 0b ^K VT вертик. табуляция █ 27 1b ^[ ESC escape 12 0c ^L FF подача ы █ 28 1c ^\ FS >итель ов 13 0d ^M CR ╣т каретки █ 29 1d ^] GS >итель групп 14 0e ^N SO shift out █ 30 1e ^^ RS >итель Ыей 15 0f ^O SI shift in █ 31 1f ^_ US >итель полей Псевдографика и спец1ы ■10-, 16-, двоичные Зы ■ ╤╧9╨J╬Псевдоние и 'ые 1ы ■ ■ Десятичн. Шестн. ■Dec Hex ■Dec Hex ▀  ▀ ▀ ▀ ▀▀▀ ▀▀▀ ▀ ▀▀▀ ▀▀▀ ┌ ┬ ┐ 218 194 191 da c2 bf ─ 196 c4  24 18 ├ ┼ ┤ 195 197 180 c3 c5 b4 │ 179 b3  25 19 └ ┴ ┘ 192 193 217 c0 c1 d9 ═ 205 cd  26 1a/ ║ 186 ba  27 1b ╔ ╦ ╗ 201 203 187 c9 cb bb ╠ ╬ ╣ 204 206 185 cc ce b9 ░ 176 b0  30 1e ╚ ╩ ╝ 200 202 188 c8 ca bc ▒ 177 b1  31 1f/ ▓ 178 b2  16 10 ╓ ╥ ╖ 214 210 183 d6 d2 b7 █ 219 db  17 11 ╟ ╫ ╢ 199 215 182 c7 d7 b6 ╙ ╨ ╜ 211 208 189 d3 d0 bd ▄ 220 dc   3 03/ ▌ 221 dd   4 04 ╒ ╤ ╕ 213 209 184 d5 d1 b8 ▐ 222 de   5 05 ╞ ╪ ╡ 198 216 181 c6 d8 b5 ▀ 223 df  6 06 ╘ ╧ ╛ 212 207 190 d4 cf beP─ ие Зы ■ ■10-,16-, двоичные Зы Набор 1ов ■  v7_X╢Т╢Т╬Т v,Т╤@Т╨УКонсольные Escape-Hости ANSIиметь вк :енным  ям консоли, Gляемым бомANSI.SYS, прежде ╡го убедитесь, Жа DEVICE=ansi.sysзадана в вашем е ї.SYS . ANSI- консоли ░ются путем ▓ана консоль (CON) 'о атированных Hостей 1ов. ВашаAа Оовать Eм любую из  й 1ьного в/в э,Вые выдают 1ы на консоль. На уровне Ратора Жэ, вые Оовать жй цели Жы TYPE, ECHO, Ф║ить нужныеHости в Жу P╙PT.В .ем списке, ы в угловых скобках <> - \ы (lо -вые Ця в Зе ■), а '' - 1ESC (■1bH). В конце >аEведено tEмеров.Hость  я▀ 7▀■ Wение Ба #■[<#а>;<колонка>H Nонирует Б. е = 1;1 (верх.левый угол)[<#а>;<колонка>f (то же, и выше)[<#>A Wает Бвверх. По ю на 1 #у.[<#>B Wает Бвниз. По ю на 1 #у.[<колонок>C Wает Бвправо. По ю на 1 колонку.[<колонок>D Wает Бвлево. По ю на 1 колонку.■ iи стирания %■ стирает и Wает Бв zло а стирает от Ба до конца ей #и■ Смешанные  %■ ▓ит ие #у и колонку в е: [<#а>;<колонка>R (яет ую Nю Ба (см. ) Wает Бв Iднюю Nю, (енную ■ е ом $■[<атриб>;...;<атриб>m ет ╚ы ▓а. Ця <атриб>: 0 нормальный (серый на черном) 1 жирный (1ы повышенной яркости) 4 подчеркивание (|ый }IBM) 5 мерцание (1мерцает) 7 реверс (черный на сером) 8 s▓а (Zний план совпадает с фоном) 30 ЧЕРНЫЙ Zний план 40 ЧЕРНЫЙ фон 31 КРАСНЫЙ Zний план 41 КРАСНЫЙ фон 32 ЗЕЛЕНЫЙ Zний план 42 ЗЕЛЕНЫЙ фон 33 ЖЕЛТЫЙ Zний план 43 ЖЕЛТЫЙ фон 34 СИНИЙ Zний план 44 СИНИЙ фон 35 РОЗОВЫЙ Zний план 45 РОЗОВЫЙ фон 36 ГОЛУБОЙ Zний план 46 ГОЛУБОЙ фон 37 БЕЛЫЙ Zний план 47 БЕЛЫЙ фон[=<8>h ет ╗8. Ця <8> .ие: 0 40x25 овый 8черно-белый 1 40x25 овый 8 ной 2 80x25 овый 8черно-белый 3 80x25 овый 8 ной 4 320x200 ний 8 ной 5 320x200 ний 8черно-белый 6 640x200 ний 8черно-белый 7 заставляет БTить на новую #у по концу #и ("заворачиваться")[=7l запрещает заворачивание Ба по концу #и■ Переeие Лы ■[;...p переfяет Ку, Eсваивая ей новое Це. ИЛИ [ое  (Ф[ый 1<#и>) - ["<#а>"p переfяемая Ка. Iдующие Ця состав- ИЛИ ляют новое Це жй Ки.[;"<#а>"p .ая Жа переfяет комбинацию Ё-D, ИЛИ Eсваивая ей Це: DIR C:[Enter]=е [4;"DIR C:";13pкомбинации vые Ки fяются двумя числами . {, Ка [F1]: 0;59; Ка [Home]: 0;71; .ая Жа переfяет F10 на: DIR [Enter] [0;68;"DIR";13p См. :енные Ки ■о их Ках. Ье: восстановить исходное Це Ки, задайте ее Здважды. {, восстановление [F10]:# ▄ 7▄Bить, лен ли ANSI.SYS, выведите на консоль  и сразу жепрочитайте &ый ┐. Он еен ль Це в е: [<стр>;<кол>RP─Eведем Eмеры Оования  й ANSI на двух языках Aирования:;= Ассемблер =ы_seg segmentColor╓db 1bH,'=3h','$'SetF10 db 1bH,'0;68;"Нажата F10"p','$'ы_seg endscode_seg segment mov dx,offset Color╓ ;ить  ной 880x25 mov ah,9 ; я э"вывести #у" int 21H mov dx,offset SetF10 ;переfить F10 на #у а mov ah,9 int 21Hcode_seg ends/* = Eмер  на языке C = */set_cursor(row,clm)int row,clm;{ printf("%c[%d;%dH",27,row,clm)}P─На уровне Жэтяжело экспериментировать с ANSI-Hостями,потому эне Oет ввести с Лы 1ESC. Предлагаем триспособа жого экспериментирования:  Оуйте Жу P╙PT жвыдачи 1а ESC на консоль. {: P╙PT $e[7m ет реверсное изображение P╙PT $e[0;68;"DIR";13p переfяет Ку F10 P╙PT ╕ет lую подсказку  *йте иовый ({, с помощью BASIC), а Чвыдайте TYPE: BASIC OPEN "ansitest.txt" FOR OUTPUT AS #1 PR┌#1,CHR$(27);"[7m" '** ет реверсное изображение PR┌#1,CHR$(27);"[0;68;'DIR';13p" '** переfяет F10 МDIR SYSTEM TYPE ansitest.txt  Войдите в BASIC, откройте "CON" и Оуйте PR┌#, послать escape-Hости консольному бу э.P─ :ение ■ ■ ї.SYS ие Зы Набор 1ов U╤U╨(U╧IU╬Vие Зы Cов Epson/IBMHex Dec h▀▀▀ ▀▀▀ B▀07 7 (BEL) выдает звонок09 9 (HT) перейти к .ей Nи табуляции (см. ESC D)0a 10 (LF) перевод #и: Zвигает бумагу на одну #у0b 11 (VT) продвигает #и до .ей Nи вертик. табуляции (ESC B)0c 12 (FF) подача ы: продвигается к zлу $ицы (см. ESC C)0d 13 (CR) ╣т каретки: печатает #у (без продвижения)0e 14 zть печать ДВОЙНОЙ ШИРИНЫ (заканчивается по CR ФLF. См. ESC W)0f 15 zть 8ПЛОТНОЙ печати11 17 выбрать C12 18 закончить 8ПЛОТНОЙ печати13 19 отменить выбор Cа14 20 закончить печать ДВОЙНОЙ ШИРИНЫ18 24 (CAN) очищает ┴Cа1b 27 (ESC) zльный Зжмного1ьных Hостей (см. ниже)7f 127 (DEL) очищает ┴CаESC-Hости, Eведенные здесь, упорядочены по категориям.■ Hex h ▀  ▀ 8▀■ Фонты / опции печати #■ESC - 1 1b 2d 01 zть 8UNDERLINEESC - 0 1b 2d 00 закончить 8underlineESC E 1b 45 zть 8EMPHASISED-MODEESC F 1b 46 закончить 8emphasised-╓ESC G 1b 47 zть 8DOUBLE-STRIKEESC H 1b 48 закончить 8double-strikeESC S 0 1b 53 00 zть 8SUPERSCRIPTESC S 1 1b 53 01 zть 8SUBSCRIPTESC T 1b 54 закончить 8ы Superscript ФSubscriptESC W 1 1b 57 01 zть 8DOUBLE-WIDTH (не отменяется по LF)ESC W 0 1b 57 00 закончить 8double-widthESC 6 1b 36 выбрать набор 1ов 2ESC 7 1b 37 выбрать набор 1ов 1■ Интервалы / за $ицы ■ESC 0 1b 30 8 LPI: ить высоту #и 1/8 дюймаESC 1 1b 31 ить высоту #и 7/72 дюймаESC 3 n 1b 33 xx ить интервал n/216 дюймаESC J n 1b 4a xx ить высоту n/216 дюйма ж.его LF (0aH)ESC 2 1b 32 пить перевод #и Xой высоты (см. ESC A) же 6 LPI: уст. высоту 1/6 дюйма (ане было ESC 2)ESC A n 1b 41 xx выбрать высоту #и n/72 дюйма (одноразовый перевод #и управляется  ESC 2)ESC C n 1b 43 xx ить #на $ице равным n (0-7fH)ESC N n 1b 4e xx ить пропуск перфорации на n #ESC O 1b 4f отменить пропуск перфорации■ Разные  )■ESC 8 1b 38 игнорировать ЕбумагиESC 9 1b 39 отменить игнорирование конца бумагиESC < 1b 3c головку домойESC U 1 1b 55 01 zть однонаправленную печатьESC U 0 1b 55 00 zть двунаправленную печатьESC B n..0 уст ВЕРТИКАЛЬНЫЕ ТАБЫ (ESC B, ЧHость 1b 42 xx..00 двоичных Цй, заканчивающаяся нулевым ╟ом)ESC D n..0 уст ГОРИЗОНТАЛЬНЫЕ ТАБЫ (ESC D, ЧHость 1b 44 xx..00 двоичных Цй, заканчивающаяся нулевым ╟ом)■ Графика 0■ESC K n1n2b1..bn 480-точечная графика. Печатает n1 + (256 * n2) ╟(╞ 1b 4b xx xx yy..yy 0 Ного ╟а - верхняя, ╞7 - нижняя точка)ESC L ... 1b 4c ... 960-точечная графика - медленная мода (см. ESC K, ESC Y)ESC Y ... 1b 59 ... 960-точечная графика - быстрая мода (см. ESC K) (не печатать точки в Hых Nях)ESC Z ... 1b 59 ... 1920-точечная графика (ат - МжESC K) (печатать  две точки на третью)P─ ие Зы Набор 1ов ■10-, 16-, двоичные Зы ■ !-║<Й,╗%%ВD&К&) Ж5)ЕB0 ▀74чK:ч(<у@<у7@у C├ D├ E├ F├?F ─ Hу Jу Lу Oу PуDPН Qу Rу Tу V├?V ─*bчm╓m╫=m{nXые ╙-·т >описывает наиболее важные Xые и pи мх ╙-·.╡╩а документированы и ены (иться в будущих ╝ях ·.Схема Eводится по возрастанию ╩ов, а пустые #и отмечают Eблизитель-ную  ональную группировку. Не показанные ╩а Шы. Хотя листинг ·показывает ╩а М-ения в 4е 40H, многие Aисты предпочитают Оовать -ения в абсолютном 4е 00H. Наша  а и построена. {, Xую по ╩у 0:0412 ~ же ╩овать М0040:0012.╩ за +имое▀ ▀ C▀0:0400 2 Базовый ╩Jа [ого ╦а RS-232 (COM1)0:0402 2 JжCOM20:0404 2 JжCOM30:0406 2 JжCOM40:0408 2 Базовый ╩Jа ж1-го ╦а параллельного Cа (LPT1)0:040A 2 JжLPT20:040C 2 JжLPT30:040E 2 JжLPT40:0410 2 ленное oе. См. список oя0:0412 1 aи в инфракрасной связи Лы PCjr0:0413 2 общая ^в K-╟ах (то же, в AX I┌12H )0:0415 2 рабочее поле жтестов изготовителя0:0417 2 ╞ы состояния Лы. См. и Лы0:0419 1 ее (накопленное) Це ┐а Alt+цифровая Ла. lо 0. И[Alt] отпускается, Це пересылается в ┴ Лы.0:041a 2 ╩"головы" ┴а Лы (1по му ╩у .ий)0:041c 2 ╩"хвоста" ┴а Лы0:041e 20H ┴Лы. Здесь ·хранит ┐К(голова и хвост ют на ╩а от 041eH до 043dH ║ительно).0:043e 1 требуется рекалибрация флоппи-иовода (╞0=A, ╞1=B, etc.)0:043f 1 мотор иеты ║ен (╞0=хA, ╞1=B, etc.)0:0440 1 ╢до выкл. мотора. ┌08H выключает мотор, Издесь 0.0:0441 1 Зaи иеты. То же, %, ╣щаемый по ┌13H0:0442 7 pь Пи состояния Длера иет0:0449 1 ий ╗8. См. ╗8ы и ┌10H0:044a 2 ширина а в овых колонках0:044c 2 за (в ╟ах) ╗pи (regen size)0:044e 2 -ение в ╗4е ╔ной $ицы ╗_0:0450 10H положение Ба (8 2-╟овых; младший=колонка, старший=#а)0:0460 2 <(а) Ба. Младший=посл.#а; старший=нач.#а.0:0462 1 rей ╔ной ╗$ицы0:0463 2 ╩Jа жчипа 6845 ╗Длера См. Jы в/в CGA0:0465 1 ее Це CRT_MODE Длера 6845 (9Jа 3x8H)0:0466 1 ее Це CRT_PALETTE Длера 6845 (9Jа 3x9H)0:0467 5 pь мх кассеты Фpь мх POST0:046c 4 счетчик тиков таймера (55мсек-единиц с момента сброса)0:0470 1 Uя таймера0:0471 1 Ё-°. ╞7=1 Eнажатии. НиИне сбрасывается, авы не сделаете сами.0:0472 2 1234H озzет, работает переЭзка Ё-Alt-Del. · Bяет , избежать "холодной Эзки" и Aы POST0:0474 4 ая pь иеты Jr Фого иа ▌AT▐0:0478 4 Ця таймаутов Cов0:047c 4 Ця таймаутов RS-2320:0480 2 zльный ╩-ения ┴а Лы ▌AT▐ (lо 001eH)0:0482 2 конечный ╩(lо 003eH)0:0484 1 ф 1ьных #-1 (максим. кительный # #и)0:0485 2 ф ╟на 1(скан-#/1в ╔ном 8е)0:0487 1 ф разные и (ф╔ен, исп. |ый дисплей и т.п.)0:0488 1 ф разные и (средства, Yи) См. ф pи0:0490 1 ▌AT▐ ╞ы состояния иа 0 (исп. ж1.2M иов)0:0491 1 жиа 10:0492 1 ▌AT▐ Ща iи жа 00:0493 1 жа 10:0494 1 ▌AT▐ ий r а жа 00:0495 1 жа 10:0497 1 ▌AT▐ additional keyboard flag рLED 'key lock' ц0:0498 4 ▌AT▐ ╩8-╞ового а ожидания Lя. См. ┌15H0:049c 4 ▌AT▐ микросекунд ожидания Lя0:04a0 1 ▌AT▐ ╔ности ожидания. 1=busy; 80H=posted; 0=acknowledged0:04a1 7 ▌AT▐ Шо жсетевых ╦ов0:04a8 4 ф SAVE_PTR ╩ ы телей. См. ф pи0:04f0 10H pь связи между Dями. Aы могут Оовать эту pь жЫи %а и т.п.0:0500 1 %печати а. 00H=ok; 01H=печать ╔на; 0ffH=aа Eпечати а0:0504 1 %фантомных флоппи-иов. 01H=иA кует МиB.0:0510 11H Оуется Ратором BASIC0:0530 3 Оуется Жой MODEf000:fff0 5 Ся FAR JMP на zло POST (Iхолодного старта 8088/86/286/386 Zает е сюда)f000:fff5 8 ла издания ╙-·в Зе ■("04/24/81" в [ых PC)f000:fffc 2 (не Оуется)f000:fffe 1 Зтипа компьютера IBM (не со╡м надежно). 0ffH = оригинальный PC ═══ └же 0feH 0feH = XT Ф╘able PC 0fdH = PCjr 0fcH = AT 0f9H = Convertible PCP─ Общая схема _ План Jов в/в  ╙-· )╒0 g*"p!h*i4j ├4%├E%╝ 'у(╝-ч<3 ╒7Н< ╒=<{=Общая схема _Eводится обзор общей "ы _во ╢работы PC/XT/AT.╩ Наименование и h ▀ E▀ ┌D─0:0 │  а ╛ов Fй: 256 4-╟овых ╩ов ─┼D─0040:0 │ pь мх ╙-· ─┼─ См. pь мх ╙-·0050:0 │ pь мх э ─┼D─x:0 │ З·(считанный из IBMBIO.COM на ие Эзки) ─┼D─x:0 │ mчики Fй э, ║ая ┌21H (IBMэ.COM) ├D─x:0 │ э: ┴а, pи мх и емые бы  ─┼D─x:0 │ 6ная порция Ў.COM (около 4K зой) │ ║ает mчики ┌22H ┌23H и ┌24H ─┼D─x:0 │ 6ные Aы и ме (постоянно 6ные утФты etc.) ─┼D─x:0 | ая пяемая Eкладная Aа (.COM Ф.EXE). | Aе изzльно Gляется вся ^до 640K (a000:0) | Фдо максимально имеющегося ╩а на данном PC ─┼D─x:0 │ Транзитная порция Ў.COM. Ратор Ж, внутренние │ Жы и т.п. ПереЭжается, акто-нибудь перекроет ее. ─┼D─a000:0 │ ф ^жvых ╗8ов ├D─b000:0 │ ╗^|ого ╦а (и ,ых с Hercules) ├D─b800:0 │ ╗^CGA (же $ица 2 жHercules) ─┼D─c800:0 │ Внешний З╙. ╙-·ищет здесь (в 2K-┼ах) З, пяемый through │ во ╢Эзки. ие ┼и ╙-_lо етe000:0 │ mчик а (ый иФф ·). См. ╙-Scan ─┼D─e000:0 │ ▌AT▐ модули ╙материнской платы в ┼ах по 64K ДО │ См. ╙-Scane000:f │ ─┼D─f600:0 │ ╙-6ный Ратор BASIC ─┼D─fe00:0 │ ╙-·: POST и ЗЭзки, mчики Fй и ╡прочее. ─┼D─f000:fff0 │ Ся JMP на Aу, пяемую E║ении Фсбросе ├D─f000:fff5 │ ла издания ·(в ■) ├D─f000:fffe │ идентификационный ЗIBM PC. См. Е>а ме · └D─█▌СВЕРХ▐█ ^сверх 1 мега╟а вна на компьютерах класса AT    ю ·┌15H , и в настоящее ╢Оуется эж iй с RAM-иами. Будущие ╝и э(I3.x) и другие опера- ционные 0ы Фие Aы могут Оовать эту ^жмультиAирования ФМ^общего наЦя.P─ ме ·0  ╙-· ╪= т= ┘= ╜= т= т=▄=▄=р=с= ▐=! ┌=#▌=$ █=%с=(с=) ▐=* ▀=+ █=, ┌.╪.. ╒<.{/План Jов ┐а-▓а  Jы 000H-0ffH 7ируются 0ной платой и Оуются ею  Jы 100H-3ffH деЗируются на шине в/в жисп. платами ╦ов  Jы 400H и выше невны на 0ной шинеНиже Eводится список Jов в/в жPC/XT и AT. Дальнейшая Пя о многихиз перечисленных здесь Jов +ится в >е: Обзор Jов в/вОтдельные Jы, рассматриваемые более подробно, отмечены Мпункты меню. ▌AT▐ ■PC/XT■ h" Доп. сведения▀ ▀ )▀ ▀000-01f 000-00f юДлер #1, 8237A-5. Jы ю020-03f 020-021 Длер Fй 8259A.040-05f 040-043 Таймер 8253-5 (AT: 8254.2). 060-063 PPI (Aируемый периферийный интерфейс) Ла, Yи, таймер060-06f Длер Лы 8042 Ла AT070-07f Реальные часы, CMOS-^, маска NMI CMOS-^080 диагностическая Дьная точка изготовителя080-09f 080-083 ю9$иц 74LS612 Jы ю 0a0 Маска NMI (немаскируемых Fй)0a0-0bf Длер Fй #2, 8259A0c0-0df юДлер #2, 8237A-5 Jы ю0f0-0ff Математический со?ор170-177 ый и(вторичный) AT Jы тв.иов1f0-1f7 ый и AT Jы тв.иов200-207 200-20f JA/D джойстика Jджойстика 210-217 Expansion Box278-27f 278-27f Параллельный C#2 (#3 с MDA) Jы Cов2c0-2df 2c0-2df ф#2% фJы в/в2f8-2ff 2f8-2ff J#2 асинхронного ╦а Iд.Jы300-31f Плата прототипа 320-32f ый и XT Jы тв.иов370-377 Длер иет (вторичный) FDC Jы378-37f 378-37f Параллельный C#1 (#2 с MDA) Jы Cов380-38f 380-38f SDLC3a0-3af 3a0-3a9 бисинхронный J#13b0-3bf 3b0-3bf |ый ╦/C#1 Jы Cов3c0-3cf 3c0-3cf ф#1% фJы в/в3d0-3df 3d0-3df CGA и ф! CGA Jы в/в3f0-3f7 3f0-3f7 Длер иет FDC Jы3f8-3ff 3f8-3ff J#1 асинхронного ╦а Iд.JыP─ Обзор Jов в/в ме ·  ╙-· = т8 ГD ╖= ┘j╫kОбзор Jов ┐а-▓аЭта детальная Пя заимствована из =х источников, и она └неполной Фне со╡м точной. Ье: ╡Eмеры с IN и OUT представляют 8-╞овый ┐-▓ ({, OUT 70H,0 озzет MOV al,0; OUT 70H,al)J h▀ J▀000H-01fH ю(Direct ╫Access) Длер См. юJы I020H-03fH Длер Fй I060H ■PC/XT■ PPI JA. /с Лы: IN al,60H ;извлекает Iдний /. См. ┌09H и /ы ▌AT▐ 9мх Лы. См. Ла AT061H ■PC/XT■ PPI (Aируемый периферийный интерфейс), JB. ╓7┬6┬5┬4┬3┬2┬1┬0╖ ║ │ │ │ │ │0│ │ ║ ╙╥┴╥┴╥┴╥┴╥┴─┴╥┴╥╜ ╞ ║ ║ ║ ║ ║ ║ ╚═ 0: Таймер 2 │(спикер) ═╦═ OR 03H=спикер ON ║ ║ ║ ║ ║ ╚═══ 1: Таймер 2 ме  ═╝ AND 0fcH=спикер OFF ║ ║ ║ ║ ╚═ 3: 1=╥high switches; 0=╥low switches (см. 62H) ║ ║ ║ ╚ ═ 4: 0=вкл. Bку четности RAM; 1=выкл. ║ ║ ╚ ═ 5: 0=вкл. Дь каналов в/в ║ ╚ ═ 6: 0=hold keyboard clock low ╚═ 7: 0=вкл. Лу; 1=выкл.062H ■PC/XT■ PPI JC. ╓7┬6┬5┬4┬3┬2┬1┬0╖ ║ │ │ │0│equip't║ ╙╥┴╥┴╥┴─┴─┴─┴─┴─╜ ╞ ║ ║ ║ ╚═╩═ 0-3: DIP-Yи. См. Список oя ║ ║ ╚ ═ 5: 1=Timer 2 Їout ║ ╚ ═ 6: 1=I/O Їcheck ╚═ 7: 1=RAM parity check error occurred.063H ■PC/XT■ PPI 9Ж/8ов. Выбирает Jы PPI ж┐а Ф ▓а. ·ет 99H (Jы A и C │ные, B оной). I064H ▌AT▐ 9ЖЛы. т Jсообщается с 8042, Вый работает Мвстроенная ая Aа Лы. Eнимает Зы Жи ╟ы мх. По вопросам Жи Aирования См. Лу AT I070H ▌AT▐ ╩9а (Ыь) часов реального ╖и и CMOS RAM.070H ▌AT▐ маска NMI. т JОуется жмаскирования Fя NMI. OUT с ╞ом 7=0 разрешает NMI; с ╞ом 7=1 запрещает NMI: OUT 70H,2dH ;разрешить NMI (2dH - "7ируемый ╩" в CMOS-_) OUT 70H,0adH ;запретить NMI I080H ▌AT▐ $ичный 9, Оуемый во ╢POST жнакопления ` I081H-08fH ю$ичные 9ы См. юJы I0a0H ■PC/XT■ маска NMI. Разрешить/запретить Fе NMI (сбой RAM) OUT 0a0H,80H ;разрешить NMI OUT 0a0H,0 ;запретить NMI I0c0H-0dfH ▌AT▐ вДлера юк 16-╞овой ю См. юJы I0f0H ▌AT▐ 80287 latch clear. 'Busy' gets latched upon an unmasked 287 error. OUT 0f0H,0 ;clears ╬latch0f1H ▌AT▐ 80287 Сброс со?ора из защищенного 8а в реальный 8. OUT 0f1H,0 ;сбрасывает 802870f8H-0fcH ▌AT▐ ме 80287. 286 посылает Зы iй и ме и Mает 5аты. I170H-177H ▌AT▐ Длер ого иа #2 См. AT Jы тв.иов I1f0H-1f7H ▌AT▐ Длер ого иа #1 См. AT Jы тв.иов I210H ■XT■ Expansion chassis ёJ213H ■XT■ Expansion chassis у215H ■XT■ Expansion chassis ыbus ╤215H ■XT■ Expansion chassis №╤(high ў)216H ■XT■# (low ў) I278H-27fH Parallel Printer ¤#2 See Printer ╘s I2f8H-2ffH Asynchronous Communications ¤COM2. See Serial ╘s I320H-32fH ■XT■ ▄шёler. See XT ▄ш╘s I2c0H-2cfH Enhanced ▀¤(ф) #2. See фI/O ╘s I378H-37fH Parallel Printer ¤#1 See Printer ╘s I3b4H-3baH Monochrome ц¤(MDA) цё╘s. See CGA I/O ╘s рa summary of usage of ╬6854 CRT ёler. ╬MDA has few capabilities beyond it's single st√ard ц╓. I3bcH-3bdH Parallel Printer on MDPA See Printer ╘s I3c0H-3dfH Enhanced ▀¤(ф) See фI/O ╘s3d2H-3dcH Color/▀¤(CGA) See CGA I/O ╘s I3f0H-3f7H чхёler (aka FDC) See FDC ╘s I3f8H-3ffH asynchronous communications ¤#1 (RS-232 serial JCOM1)9 See Serial ╘sP─ ме ·1 Схема Jов в/в у9D╗ E ╒J╗JШCJ ╫KAT Keyboard Functions╬keyboard of ╬▌AT▐ (√its Intel 8042 microcomputer interface) isprogrammable √a lot more interesting than ╬old-style PC keyboards. Using╬inрmation below, you can set ╬key repeat speed √play games with ╬"lock" key LED ц.Note: This is not a comprehensive coverage of ╬details of keyboard √8042 operation, but it should provide some food рthought.╘60H is рwriting ы√is maintained рcompatibility with earlier╓ls. If ╬examples that use ╘64H don't work, try using 60H.╘64H is рwriting Єs √ы√р╥ing keyboard ╧.Beрe sending a Єto ╬keyboard, ╬·tests its ╧(IN al,64H)√makes sure a key isn't being pressed or ╬internal buffer isn't full, etc.╬re's a small risk if you just go ahead √send ╬Є: mov al,cmd_code out 64H,alрa two-part Єsuch as setting ╬typematic rate, it's wise to delay alittle while between OUTs: mov al,cmd_code out 64H,al mov cx,2000H ;ar∙rary ў 10ms+delay: loop delay mov al,ы_value out 64H,alCmd ъ▀ K▀0ffH Reset ╬keyboard √start internal diagnostics0feH Resend ╬last transmission0fdH-0f7H (NOP)0f6H Set keyboard to defaults √continue scanning0f5H Set keyboard to defaults √disable keyboard scanning0f4H у╬keyboard. Kybd sends 'ACK', clears buffer, √starts scanning I0f3H Set typematic rate √delay. First send 0f3H, ╬n send ыў: ╓7┬6┬5┬4┬3┬2┬1┬0╖ ║0│dly│rept rate║ ╙╥┴─┴─┴─┴─┴─┴─┴─╜ ║ ╚╦╝ ╚═╩═ ∙s 0-4 set ╬repeat rate (see below) ║ ╚ ═ ∙s 5-6 set initial delay beрe first repeat: ║ 00=250ms; 01=500ms; 10=750ms; 11=1000ms ╚═ ∙7 is always 04 Value Rate Value Rate This chart is a partial guide р╬repeat 0 = 30.0 0aH = 10.0 rate (∙s 0-4). You can interpolate р 1 = 26.7 0dH = 9.2 values not shown, but let's face it, you're 2 = 24.0 10H = 7.5 only interested in ╬fastest rates. 4 = 20.0 14H = 5.05 8 = 15.0 1fH = 2.0 ╬keyboard is initially set to begin repeating after 1/2-second √╬n repeat at a rate of 10 repeats per second. This is much too slow. A ы ўof 01H sets ╬delay to 1/4-second with 26 repeats per second. I0f2H-0efH (NOP)0eeH Echo. Diagnostics aid. Simply sends 0eeH right back. I0edH Turn LED 'lock key' lights on or off. First send 0edH, ╬n send ыў: ╓7┬6┬5┬4┬3┬2┬1┬0╖ ║ not used│c│n│s║ ╙─┴─┴─┴─┴─┴╥┴╥┴╥╜ ║ ║ ╚═ ScrollLock light 01H=turn on ║ ╚═══ NumLock light 02H=turn on ╚═ CapsLock light 04H=turn on ╬∙positions 0-3 correspond to ∙s 4-6 of ╬keyboard flags variable in ╬·ыarea. You should make an efрt to keep ╬flags in sync with ╬lights. рinstance, if you do a big favor р╬user √set his ten-key pad into NumLock ╓(by setting ∙5 of 0:0417) ╬n be sure to turn on ╬corresponding LED (∙1 here).P─ Keyboard Flags ёBlocks# I/O ╘Map  ╒ч МfМ f{Cf ╫gAsynchronous ¤╘s╬·ыarea contains a list of up to four COM ╘base №es.During POST ╬·tests р√initializes COM1 √COM2.  ╬COM1 ¤decodes ╘s 3f8H through 3ffH  ╬COM2 ¤decodes ╘s 2f8H through 2ffH╬╙·┌14H will work with any of ╬four ╘s, as long as you store╬╘'s base №into ╬COMM ╘table starting at 0:0400. It iscritical that no two ¤s share ╬same №es or nei╬r will work.·sup╘s a simple polling-style serial I/O. ╬¤is able to рce a▄ware ╪on a variety of conditions, depending upon ╬values in ╬╪у╤(3f9H or 2f9H). COM1 рces ╪level 4 (IRQ 4 is ▌d by ╬┌0cH vector) COM2 рces ╪level 3 (IRQ 3 is ▌d by ╬┌0bH vector)╘ ъ▀ J▀3f8H ╠: transmitter holding ╤. 8 ∙s of єto be sent. ╥: receiver buffer ╤. 8 ∙s of єreceived. ╠: (when DLAB=1) divisor latch low ў Baud Divisor █ Baud Divisor After an OUT 3fbH,80H this ╘holds ▀ ▀ █ ▀ ▀ ╬low ўof ╬clock divisor 110 1040 █ 1200 96 which, toge╬r with ╬high ў 150 768 █ 2400 48 (╘3f9h) constitute a 16-∙value 300 384 █ 4800 24 that sets ╬baud rate as shown: 600 192 █ 9600 125 ▀3f9H ╠: divisor latch high ў(when DLAB=1; ie, after OUT 3fbH,80H) ╠: ╪у╤ ╓7┬6┬5┬4┬3┬2┬1┬0╖ ║0 0 0 0│ │ │ │ ║ ╙─┴─┴─┴─┴╥┴╥┴╥┴╥╜ ∙ ║ ║ ║ ╚═ 0: 1=уan ╪when rec'd ыis available ║ ║ ╚═══ 1: 1=у╪when transmitter buffer is empty ║ ╚═ 2: 1=уint on rec'r line ╧(error or °) ╚═ 3: 1=у╪on ╓m ╧(CTS,DSR,RI,RLSD)3faH ╥: ╪identification ╤. When an ╪occurs, ╥ this ╤to find what caused it. ╓7┬6┬5┬4┬3┬2┬1┬0╖ ║0 0 0 0 0│ │ ║ ╙─┴─┴─┴─┴─┴─┴─┴╥╜ ∙ ╚╦╝ ╚═ 0: 1=no ╪pending (can be used рpolling) ╚═ 1: 00=receiver line ╧╪. Occurs upon: overrun, parity, or framing error, or ° Reset by ╥ing line ╧(╘3fdH) 01=received ыavailable Reset by ╥ing receiver buffer (╘3f8H) 10=transmitter buffer empty Reset by writing transmitter buffer (╘3f8H) 11=╓m ╧. Occurs upon: Clear To Send, ы Set ╥y, Ring Ind, or Rec'd Line Signal Detect Reset by ╥ing ╓m ╧(╘3feH)3fbH ╥/╠: line ё╤ ╓7┬6┬5┬4┬3┬2┬1┬0╖ ║ │ │ │par│s│len║ ╙╥┴╥┴╥┴─┴─┴╥┴─┴─╜ ∙ ║ ║ ║ ╚╦╝ ║ ╚═╩═ 0-1: word length: 00=5, 01=6, 10=7, 11=8 ║ ║ ║ ║ ╚═ 2: stop ∙s: 0=1, 1=2 (some un-noteworthy exceptions) ║ ║ ║ ╚═ 3-4 parity: x0=None, 01=Odd, 11=Even ║ ║ ╚ ═ 5: stuck parity (not used by ·) ║ ╚ ═ 6: у°ё. 1=start sending 0s (spaces) ╚═ 7: DLAB (Divisor Latch Access ∙) Determines ╬╓ of ╘s 3f8H √3f9H. 1=set baud rate, 0=normal3fcH ╠: ╓m ё╤ ╓7┬6┬5┬4┬3┬2┬1┬0╖ ║0 0 0│ │ │ │ │ ║ ╙─┴─┴─┴╥┴╥┴╥┴╥┴╥╜ ∙ ║ ║ ║ ║ ╚═ 0: 1=activate -DTR (-ыterminal ╥y), 0=deactivate ║ ║ ║ ╚═══ 1: 1=activate -RTS (-request to send), 0=deactivate ║ ║ ╚═ 2: 1=activate -OUT1 (spare, user-designated output) ║ ╚═ 3: 1=activate -OUT2 ╚ ═ 4: 1=activate loopback рdiagnostic testing3fdH ╥: line ╧╤ ╓7┬6┬5┬4┬3┬2┬1┬0╖ ║0│ │ │ │ │ │ │ ║ Note: ∙s 1-4 cause an ╪if уd (3f9H) ╙─┴╥┴╥┴╥┴╥┴╥┴╥┴╥╜ ∙ ║ ║ ║ ║ ║ ║ ╚═ 0: 1=ы╥y (DR). Reset by ╥ing recv'r buffer ║ ║ ║ ║ ║ ╚═══ 1: 1=overrun error (OE). Previous єis lost ║ ║ ║ ║ ╚═ 2: 1=parity error (PE). Reset by ╥ing line ╧ ║ ║ ║ ╚═ 3: 1=framing error (FE). Bad stop ∙in є ║ ║ ╚ ═ 4: 1=°indicated (BI). Sustained space received ║ ╚ ═ 5: 1=transmitter holding ╤empty. OK to send ╚ ═ 6: 1=transmitter empty. No ыbeing processed.3feH ╥: ╓m ╧╤ ╓7┬6┬5┬4┬3┬2┬1┬0╖ ║ │ │ │ │ │ │ │ ║ Note: ∙s 0-3 cause an ╪if уd (3f9H) ╙╥┴╥┴╥┴╥┴╥┴╥┴╥┴╥╜ ∙ ║ ║ ║ ║ ║ ║ ║ ╚═ 0: 1=Delta Clear To Send (DCTS) has changed state ║ ║ ║ ║ ║ ║ ╚═══ 1: 1=Delta ыSet ╥y (DDSR) has changed state ║ ║ ║ ║ ║ ╚═ 2: 1=Trailing Edge Ring Indicator (TERI) is active ║ ║ ║ ║ ╚═ 3: 1=Delta ыCarrier Detect (DDCD) has changed state ║ ║ ║ ╚ ═ 4: 1=Clear To Send (CTS) is active ║ ║ ╚ ═ 5: 1=ыSet ╥y (DSR) is active ║ ╚ ═ 6: 1=Ring Indicator (RI) is active ╚═ 7: 1=ыCarrier Detect (DCD) is activeP─ ┌14H ╙-·Functions& I/O ╘Map  у уB у0 Д6у7уIК I{CI ╫Jчёler ╘sThis describes I/O р╬Floppy шёler (FDC). ╬main component is╬NEC цPD765 (or compatible FDC chip).╬▌AT▐ FDC is incorporated on ╬same card as its ▄шёler, butis compatible with ╬st√ard ■PC/XT■ FDC (except as noted below). ╬maindifferences are that ╬AT FDC is capable of multiple ыrates but ▌sonly two хs.  чёler 1 decodes ╘s 3f0H through 3f7H  чёler 2 decodes ╘s 370H through 377H (on ▌AT▐ only)╬FDC generates ╪level 6 (IRQ 6) after every operation (╥, ╠,seek, recalibrate, etc.). IRQ 6 is vectored to ┌0eH √▌d by ·.╘ ъ▀ J▀3f2H ╠: digital output ╤ ╓7┬6┬5┬4┬3┬2┬1┬0╖ ║D C B A│ │ │ ║ ╙─┴─┴─┴─┴╥┴╥┴─┴─╜ ∙ ╚══╦══╝ ║ ║ ╚═╩═ 0-1: хto ╨0-3 (AT: ∙1 not used) ║ ║ ╚═ 2: 0=reset чёler; 1=уёler ║ ╚═ 3: 1=учю√╪s ╚ ═ 4-7: хmotor у. Set ∙s to turn хON. (AT: ∙s 6-7 not used)3f4H ╥-only: main ╧╤ ╓7┬6┬5┬4┬3┬2┬1┬0╖ ║ │ │ │ │D C B A║ ╙╥┴╥┴╥┴╥┴─┴─┴─┴─╜ ∙ ║ ║ ║ ║ ╚═╩═ 0: чхbusy (AT: ∙s 2-3 not used) ║ ║ ║ ╚ ═ 4: 1=ёler busy (╥or ╠in progress) ║ ║ ╚ ═ 5: 1=non-ю╓; 0=ю╓active ║ ╚ ═ 6: ыdirection: 1=ёler to CPU; 0 = CPU═FDC ╚═ 7: Request рMaster. 1=OK to send/recv cmd or ы3f5H ╥/╠: FDC Є/ы╤ This ╘is used рall ёler Єoperations. First, a Є ўis output, ╬n one or more ыparameters are output. ╬operation is perрmed, ╬n 0 or more inputs return ╬results of ╬operation. All of this I/O goes through this ╘√must take place in ╬correct sequence. This lists ╬Єs used by ·рits st√ard functions, but it does not show ╬parameters that follow or values of ╬results. Sorry, but you'll need ╬Tech Ref if you want more inрmation. Cmd ъ ▀▀▀ <▀ e6H ╥ы(expects 8 parms to follow; 7 results when done) c5H ╠ы(expects 8 parms to follow; 7 results when done) 4dH рmat track (expects 5 parms to follow; 7 results when done) 07H Recalibrate (expects 1 parm to follow; no results when done) 0fH Seek Track (expects 2 parms to follow; no results when done)3f6H ▌AT▐ ╠: fixed ш╤(no inрmation available)3f7H ▌AT▐ ╠: чё╤ ╓7┬6┬5┬4┬3┬2┬1┬0╖ ║ │ ║ ╙─┴─┴─┴─┴─┴─┴─┴─╜ ∙ ╚═╦═╝ ╚═╩═ 0-1: ыtransfer rate ║ 00=500 KBS, 01=300 KBS, 10=250 KBS, 11=reserved ╚ ═ 2-7: I can't find anything in ╬Tech Ref about ╬se ╥: digital input ╤. Used рdiagnostics (except ∙7) ╓7┬6┬5┬4┬3┬2┬1┬0╖ ║c│ │ │ │ ║ ╙╥┴╥┴─┴─┴─┴─┴╥┴╥╜ ∙ ║ ║ ╚══╦══╝ ║ ╚═ 0: 1=╨х0 ║ ║ ║ ╚═══ 1: 1=╨х1 ║ ║ ╚═ 2-5: Head ╨0-3 (∙2=head 0, ∙3=head 1, etc) ║ ╚ ═ 6: ╠Gate ╚═ 7: Change Line (1=чchange line is ON)P─ ┌13H ╙-·Functions& I/O ╘Map уу)▌7К 7▌ 7▒C7 ╫8AT ▄ш╘s╬▌AT▐ ▄шёler is incorporated onto ╬same ¤card as itsчёler. Its I/O ╘s, Єs, √╧signals are differentfrom those of ╬■XT■ ёler. See XT ▄ш╘s рdetails.  AT ▄шёler #1 decodes ╘s 1f0H through 1f7H  AT ▄шёler #2 decodes ╘s 170H through 177H╬ёler generates ╪level 14 (IRQ 14) after every operation(╥, ╠, seek, etc.). IRQ 14 is vectored to ┌76H where an action flag∙is set at №0:048e.╘ ъ▀ J▀1f0H ы╤. ╥/╠ыfrom/to ёler sector buffer1f1H ╠: ╠Precompensation ╤. Turn on ╠precompensation. ╥: Error ╤. Contains ∙s рlast error. ╓7┬6┬5┬4┬3┬2┬1┬0╖ ║ │ │0│ │0│ │ │ ║ ╙╥┴╥┴─┴╥┴─┴╥┴╥┴╥╜ ∙ ║ ║ ║ ║ ║ ╚═ 0: ы№Mark not found ║ ║ ║ ║ ╚═══ 1: Track 0 Error ║ ║ ║ ╚═ 2: Єwas aborted ║ ║ ╚ ═ 4: Sector ID not found ║ ╚ ═ 6: ECC Error: Uncorrectable ыerror ╚═ 7: Bad block1f2H Sector count. ╥/╠count of sectors рoperation1f3H Sector number. ╥/╠я/starting logical sector number1f4H Cylinder high (∙s 0-1 are ∙s 8-9 of 10-∙cylinder number)1f5H Cylinder low (∙s 0-7 of 10-∙cylinder number)1f6H х& Head. ╥/╠: ∙s indicate head, хрoperation1f7H ╠: Є╤(Summary: see Tech Ref рfull details) 1xH = Restore to cylinder 0 (low nibble is step rate) 7xH = Seek to cylinder (low nibble is step rate) 2xH = ╥sector (low nibble indicates retry √ECC-╥) 3xH = ╠sector (low nibble indicates retry √ECC-╥) 50H = рmat track 4xH = verify ╥(low nibble indicates retry) 90H = diagnose 91H = set parameters (max heads,sectors) р╨ed х1f7H ╥: ╧╤ ╓7┬6┬5┬4┬3┬2┬1┬0╖ ║ │ │ │ │ │ │ │ ║ ╙╥┴╥┴╥┴╥┴╥┴╥┴╥┴╥╜ ∙ ║ ║ ║ ║ ║ ║ ║ ╚═ 0: 1=previous Єended in an error. ║ ║ ║ ║ ║ ║ ╚═══ 1: Index: set to 1 while index hole is detected ║ ║ ║ ║ ║ ╚═ 2: Corrected ы. Error found, but ECC fixed it. ║ ║ ║ ║ ╚═ 3: ыRequest. Buffer is waiting ры(busy) ║ ║ ║ ╚ ═ 4: Seek completed ║ ║ ╚ ═ 5: ╠fault ║ ╚ ═ 6: х╥y р╥/╠/seek (unless ∙4=0) ╚═ 7: Busy. 1=executing a Є(o╬r ∙s are invalid)P─ ┌13H XT ▄ш╘s ▄шParameter Table I/O ╘Map у+К +▄ +▒C+ ╫,XT ▄ш╘sThis describes ╬■XT■ ▄шёler. It is similar to ёlers рmost of ╬Non-IBM ▄шёlers which are used in PCs. However, ╬reis no guarantee, especially considering that ╬AT uses a different setup alltoge╬r. It is safest to let ╬system firmware mask ╬differences. ╬XT ▄шёler decodes ╘s 320H through 327H╬ёler generates ╪level 5 (IRQ 5) after every operation (╥,╠, seek, etc.). IRQ 5 is vectored to ┌0dH (which is also assigned as ╬seldom-used IRQ рLPT2). ┌0dH disables ╬▄шю√returns.╘ ъ▀ J▀320H ы╤. ╠Єs, ╥╧. ╠: This ╤is always written to in a series of ўs, written sequentially to this ╘. ╬first ўis a ёler Є √╬following ўs (up to 5) describe ╬head, cylinder, sector, √a ёўwhich has a variety of definitions, too numerous рthis discussion. ╥: When an error is sensed (╘321H, ∙1), you can ╠a Sense_Cmd sequence to this ╤, ╬n ╥it four times to obtain everything ╬ёler has to say. ╬first ў indicates ╬error. Better check ╬Tech Ref рthis stuff.321H ╠: ёler reset Output a ўof 00H to this ╘to reset ╬ёler. ╥: ёler ╧╤ ╓7┬6┬5┬4┬3┬2┬1┬0╖ ║ │d│ │e│ ║ ╙─┴─┴╥┴─┴─┴─┴╥┴─╜ ∙ ║ ╚═══ 1: 1=error has occurred ╚ ═ 5: logical unit number (х0 or х1)322H ╠: generate ёler ╨pulse Any OUT to this ╘уs ╬ёler. Use beрe a Є.323H ╠: ю√╪mask ╤ ╓7┬6┬5┬4┬3┬2┬1┬0╖ ║ not used │i│d║ ╙─┴─┴─┴─┴─┴─┴╥┴╥╜ ∙ ║ ╚═ 0: 1=ую, 0=don't use ю ╚═══ 1: 1=у╪after ёler Є(IRQ 5)P─ ┌13H AT ▄ш╘s ▄шParameter Table I/O ╘Map  2├6 ▀'у ─s╣1s ▀и├ иЕи З!и ▀Cи ╫йJы в/в фф,вверх с CGA Eве  ·. ф намного сложнее аппарат-но, но он эмулирует много 9ов/iй CGA. См. Jы в/в CGA . фнедопускает "снега", т. е. не нужна Bка на обратный ход EЫи на .  ф#1: Jы 3c0H-3dfH;  ф#2: Jы 2c0H-2dfH╬фcan generate ╪level 2 (IRQ 2, ┌0aH) during ╬overscan at╬start of ╬═retrace. ╬▌AT▐ uses IRQ 2 as a cascade request рa whole class of IRQs (IRQ 8-15). Techniques рh√ling multiple ▄ware╪s through ╬same IRQ are covered in ╬AT Tech Ref 6183355 (1986).Note: ·stores mirrors of ╬яCRTC ╘values √o╬r фinр- mation in ф ыAreas To change values, you should ╥╬appropriate variable, set ╬∙, perрm OUT, √store ╬new value in ╬variable.╘ ъ▀ J▀3c0H ╠: Attribute ёler (ATC) №√ы╘ Perрm IN al,3daH ;(or IN 3baH) to рce №╓ OUT 3c0H,reg_no ;╨ATC ╤(toggle to ы╓) OUT 3c0H,value ;store a value in an ATC ╤ Note: ∙s 0-4: ╨an ATC ╤ ∙5: 1=уц; 0=set ╤ After ╨ing a ╤, perрm ano╬r OUT 3c0H,ыas below: ATC Reg ыъ ▀ <▀ 00-0fH palette ╤s: ╨colors рthis attribute ╓7┬6┬5┬4┬3┬2┬1┬0╖ ∙ ║ │r│g│b│R│G│B║ 0: Red Note: R,G,B are 2/3-intensity ╙─┴─┴╥┴╥┴╥┴╥┴─┴─╜ 1: Green r,g,b are 1/3-intensity ║ ║ ║ ╚═ 2: Blue ║ ║ ╚═ 3: blue' (also MDA-emulation underline) ║ ╚ ═ 4: green' (also CGA-emulation intensity) ╚ ═ 5: red' 10H ╓ё ╓7┬6┬5┬4┬3┬2┬1┬0╖ ∙ ║ │ │ │ │ ║ 0: 1=▀╓s, 0=text ╙─┴─┴─┴─┴╥┴╥┴─┴─╜ 1: 1=MDA attributes, 0=color attributes ║ ╚═ 2: 1=9th dot is 8th dot рline/box chars ║ 0=use bkgd color as 9th dot of char ╚═ 3: 1=уblink, 0=allow 4-∙bkgd 11H ╨overscan (border) color. Same rgbRGB as palette regs 12H уcolor planes ╓7┬6┬5┬4┬3┬2┬1┬0╖ ∙ ║ │ │ ║ 0-3: set ∙s to уcolor planes 0-3 ╙─┴─┴─┴─┴─┴─┴─┴─╜ 4-5: video ╧to multiplex+ 00=R&B, 01=b&G, 10=r&g, 11=unused 13H horizontal pixel panning Number of dots to shift ыleft. ∙s 0-3 valid (0-0fH)3c2H ╠: miscellaneous ёfunctions ╓7┬6┬5┬4┬3┬2┬1┬0╖ ∙ ║ │ │ │ │ │ │ ║ 0: 1=╨3BxH (emulate MDA); 0=╨3DxH (CGA) ╙╥┴╥┴╥┴╥┴─┴─┴─┴─╜ 1: 1=уRAM; 0=disable RAM ║ ║ ║ ║ ╚═╩═ 2-3: Dot clock: 00=14mHz; 01=16mHz; 10=external; 11=res ║ ║ ║ ╚ ═ 4: 1=╨feature output; 0=╨internal ║ ║ ╚ ═ 5: Page ∙рodd/even ╓ s ║ ╚ ═ 6: Horizontal retrace polarity: 1=negative, 0=positive ╚═ 7: ═retrace polarity: 1=negative, 0=positive3c4H ╠: sequencer №╤3c5H ╠: sequencer ы╤ Perрm OUT 3c4H,reg_no; ╬n OUT 3c5H,ы Seq Reg ыъ ▀ <▀ 00 sequencer reset. ∙s 0-1 indicate asynchronous/synchronous reset. 01 clocking ╓ ╓7┬6┬5┬4┬3┬2┬1┬0╖ ∙ ║ │ │ │ │ ║ 0: 1=8 dots per є; 0=9 dots/char ╙─┴─┴─┴─┴╥┴╥┴─┴─╜ 1: CRT b√width: 1=low; 0=high ║ ╚═ 2: 1=shift every char; 0=every 2nd char ╚═ 3: dot clock: 1=halved; 0=normal 02 map mask: ∙s 0-3 у╠s to ∙planes 0-3 03 єmap ╨: ∙s 0-1 ╨Map B (рwhen attribute ∙3=0) ∙s 2-3 ╨Map A (рwhen attribute ∙3=1) 04 ╫╓ ╓7┬6┬5┬4┬3┬2┬1┬0╖ ∙ ║ │ │ │ ║ 0: 1=text char generator; 0=▀ ╙─┴─┴─┴─┴─┴╥┴─┴─╜ 1: 1=фram > 64K; 0=64K ╚═ 2: 1=sequential; 0=odd/even (as in CGA)3caH ╠: ▀2 position (must be 0 рф)3ccH ╠: ▀1 position (must be 1 рф)3ceH ╠: ▀1 √2 №╤3cfH ╠: ▀ёler ы╤ Perрm OUT 3ceH,reg_no; ╬n OUT 3cfH,ы GDC Reg ыъ ▀ <▀ 00 set/reset. ∙s 0-3 ╨planes р╠╓00 01 уset/reset 02 color compare. ∙s 0-3 ╨color р╥╓01 03 ыrotate √function ╨р╠╓00 ∙s 0-2: set rotate count р╠╓00 3-4: fn ╨р╠╓s 00 √02 00=no change; 01=AND; 10=OR; 11=XOR 04 ╥map ╨. ∙s 0-2 ╨map number р╥╓00 05 ╓╤ ╓7┬6┬5┬4┬3┬2┬1┬0╖ ∙ ║ │ │ │ │ │ ║ 0-1: ╠╓0-2 ╙─┴─┴╥┴╥┴╥┴─┴─┴─╜ 2: test condition ║ ║ ╚═ 3: ╥╓: 1=color compare, 0=direct ║ ╚ ═ 4: 1=use odd/even RAM №ing ╚ ═ 5: 1=use CGA mid-res layout (2-∙s/pixel) 06 miscellaneous ▀ё ╓7┬6┬5┬4┬3┬2┬1┬0╖ ∙ ║ │ │ │ ║ 0: 1=▀; 0=уchar gen (text) ╙─┴─┴─┴─┴─┴─┴─┴─╜ 1: 1=chain odd maps after even maps ╚═ 2: ╫mapping рCPU )) 00=a000H (128K); 01=a000H (64K)) 10=b000H (32K MDA); 11=b800H (32K CGA) 07 color masking disable ∙s 0-3 disable planes from compare logic in ╥╓01 08 ∙mask. ∙s 0-7 ╨∙s to be masked in all planes3b4H or 3d4H CRT ёler №3b5H or 3d5H CRT ёler internal ╤s Note: ╘3c0H ∙0 ╨s which ╘№-pair to use. (3bxH is normal рMDA; 3dxH is normal рCGA). Perрm OUT 3x4H,reg_no; ╬n OUT 3x5H,ы CRTC Rg ыъ ▀ <▀ 00-11H See Video Parameter Table √CGA I/O ╘s Exceptions: 02 start horizontal blanking (єcount) 03 end horizontal blanking ∙s 0-4 are blank width; ∙s 5-6 are skew у(0 to 3) 04 start horizontal retrace (єposition) 05 end horizontal retrace ╓7┬6┬5┬4┬3┬2┬1┬0╖ ∙ ║ │ │ ║ 0-4: horizontal retrace width ╙╥┴─┴─┴─┴─┴─┴─┴─╜ 5-6: retrace delay 0-3 є-clocks ╚═ 7: 1=start panning on odd №; 0=even 06 ═total (scan lines) 07 ∙8 рcertain CRTC ╤s ╓7┬6┬5┬4┬3┬2┬1┬0╖ ∙ ║ │ │ │ │ │ │ ║ 0: ═total (CRTC Reg 06) ╙─┴─┴╥┴╥┴╥┴╥┴─┴─╜ 1: vert disp'd уend (CRTC Reg 12H) ║ ║ ║ ╚═ 2: ═retrace start (CRTC Reg 10H) ║ ║ ╚═ 3: start ═blanking (CRTC Reg 15H) ║ ╚ ═ 4: line compare (CRTC Reg 18H) ╚ ═ 5: cursor location (CRTC Reg 0aH) 08 preset row scan first scan line after ═retrace 10H ╠: ═retrace start 11H ╠: ═retrace end ╓7┬6┬5┬4┬3┬2┬1┬0╖ ∙ ║ │ │ │ ║ 0-3: retrace width in scan lines ╙─┴─┴╥┴─┴─┴─┴─┴─╜ 4: 0=clear ═╪ ╚ ═ 5: 0=у═╪IRQ2 12H ═цed end (scan line) 13H ═цed adjustment 14H underline location. ∙s 0-5 are scan line number. 15H start ═blanking (scan line) 16H end ═blanking 17H ╓ё ╓7┬6┬5┬4┬3┬2┬1┬0╖ ∙ ║ │ │ │ │ │ │ │ ║ 0: 0=CGA ▀addr compatibility ╓ ╙╥┴╥┴╥┴╥┴╥┴╥┴─┴─╜ 1: ╨row scan counter ║ ║ ║ ║ ║ ╚═ 2: horiz retrace: 1=double ═res ║ ║ ║ ║ ╚═ 3: 1=use char clock /2 рword refresh ║ ║ ║ ╚ ═ 4: 1=рce high impedance on output ║ ║ ╚ ═ 5: №wrapping ╓ ║ ╚ ═ 6: 1=ў№ing ╓; 0=word ╓ ╚═ 7: 0=▄ware reset; 1=normal operations 18H line compare (scan line) Used рsplit screen operations.3baH or 3daH ╠: ∙s 0-1 ёFeature ёoutputs FC0 √FC1 Note: ╘3c0H ∙0 ╨s which ╘№to use. ╥: ╧∙s are same as MDA (╘3baH) or CGA (╘3daH) ╓7┬6┬5┬4┬3┬2┬1┬0╖ ∙ ║ │ │ │ │ ║ 0: retrace. 1=цis in vert or horiz retrace. ╙─┴─┴─┴─┴╥┴╥┴─┴─╜ 1: 1=light pen is triggered; 0=armed ║ ╚═ 2: 1=light pen switch is open; 0=closed ╚═ 3: 1=═sync pulse is occurring.3bdH or 3dbH ╠: light pen latch reset. Any OUT clears ╬latch.3bcH or 3dcH ╠: light pen latch set. Any OUT arms ╬latch.P─ ф ┌10H ф · CGA I/O ╘s I/O ╘Map & ▐D ╒╣?Е ?╕?╣7?├C? ╫@Color/▀¤I/O ╘sThis describes ╬I/O ё╘s р╬Color/▀¤. ╬CGAis built around ╬Motorolla 6845 CRT ёler chip.  ╬CGA decodes ╘s 3d0H through 3dfH (actually using 3d2H-3dcH) Note: ╬se ╘s overlap ╬фI/O ╘s рupward compatibility. With some exceptions, ╬CGA inрmation applies to ╬ф.An early Tech Ref indicated that ╬CGA could рce ▄ware ╪level 2upon ═retrace. However, ╬CGA has never had this ability.Note: ·stores "mirrors" of ╬яCRTC ╘values in ╬·ы area. To change a single ∙, you should ╥╬appropriate variable, set ╬∙, perрm ╬OUT, √store ╬new value in ╬variable.╘ ъ▀ J▀3d4H ╠: CRT ёler ╤╨. Use this ╘to ╨any of ╬ 18 CRTC ╤s. Do an OUT 3d4H,reg_no followed by a ╥from or ╠to ╘3d5H.3d5H CRT ёler ╤s. After ╨ing via ╘3d4H, output or input here to access ╬CRTC internal ╤s. ╠: See Video Parameter Table рa summary of ╬CRTC ╤s √ a way to look up st√ard ·settings р╬ц╓s. ╥: ╤s R12 through R17 can be ╥to determine ╬я video page №, cursor №, √light pen inрmation.3d8H ╠: ╓╨╤(Note: ·keeps яvalue at 0:0465) ╓7┬6┬5┬4┬3┬2┬1┬0╖ ║ │b│r│v│c│g│w║ ╙─┴─┴╥┴╥┴╥┴╥┴╥┴╥╜ ∙ ║ ║ ║ ║ ║ ╚═ 0: width (text ╓s): 0=40 clms; 1=80 clms ║ ║ ║ ║ ╚═══ 1: 1=у▀╓s; 0=text ╓s ║ ║ ║ ╚═ 2: 1=disable color burst on composite monitor ║ ║ ╚═ 3: 1=уvideo signal; 0=disable beam (all black) ║ ╚ ═ 4: dot resolution: 0=320 2-∙dots; 1=640 1-∙dots ╚ ═ 5: уblink: 1=text attribute ∙7 blinks рgrnd* 0=attribute ∙7 is bkgd intensity3d8H ╠: Color ╨╤ ╓7┬6┬5┬4┬3┬2┬1┬0╖ ║ │b│i│I│R│G│B║ ╙─┴─┴╥┴╥┴─┴─┴─┴─╜ ∙ ║ ║ ╚═╩═ 0-3: color. Text ╓s: IRGB of border ║ ║ ▀╓s: IRGB of background ║ ╚ ═ 4: intensity. Text: bkgd intensity ║ Mid-res ▀: pixel intensity ╚ ═ 5: blue. ╨s ▀palette 0 or 1 (1 adds blue)3daH ╥: ╧╤ ╓7┬6┬5┬4┬3┬2┬1┬0╖ ║ │ │ │ │ ║ ╙─┴─┴─┴─┴╥┴╥┴╥┴╥╜ ∙ ║ ║ ║ ╚═ 0: retrace. 1=цin vert or horiz retrace. ║ ║ ╚═══ 1: 1=light pen trigger is triggered; 0=armed ║ ╚═ 2: 1=light pen switch is open; 0=closed ╚═ 3: 1=═sync pulse is occurring. цis in ═retrace -- access won't cause "snow"3dbH ╥/╠: Light Pen Latch Reset. Any output clears ╬light pen latch.3dcH ╥/╠: Light Pen Latch Set. Any output set ╬light pen latch.P─ ┌10H Screen Attributes Video Parameter Table ф I/O ╘Map у+у=Н(Н ({C( ╫)Game I/O ¤╘╘201H is designated as ╬Game ¤╘or Joystick ╘. It is notsup╘ed by ╬■PC/XT■ ╙-·, but ╬▌AT▐ ·service ┌15H SubFn 84Hprovides an easy-to-use interface р╬¤.It is an analog-to-digital converter which can be used by scientific measuringtools √o╬r devices which present an analog (resistive) input to ╬interface. It accepts up to four digital inputs (on/off ыsuch as ╬pressof a button) √up to four resistive inputs (such as an X-ordinate of aJoystick or a temperature value from an electronic ╬rmometer).╬value obtained by an IN from 201H is as diagrammed:╓─7┬─6┬─5┬─4╥─3┬─2┬─1┬─0╖║B2│B1│A2│A1║By│Bx│Ay│Ax║╙──┴──┴──┴──╨──┴──┴──┴──╜ ╚═╦═╝ ╚ ═╩═ Coordinates (resistive, time-dependent inputs) ╚═ Buttons/Triggers (digital inputs)You can ╥╬buttons (digital inputs) with: mov dx,201H out dx,al ;initiate transaction; AL=anything in al,dx ;╥∙s 4-7 рbuttons: 0=pressed, 1=open╬joysticks, paddles, measuring devices (resistive inputs) are ╥bytracking ╬time that an X or Y ∙stays high (1) after an OUT 201,xxx.To ╥an individual resistive input (eg, joystick A, X ordinate): mov dx,201H out dx,al ;initiate transaction AL=anything mov cx,-1 ;set resistance counter рfirst loopgain: in al,dx ;╥╬settings inc cx ;bump counter test al,1 ;has X-ordinate рjoystick A gone low? jnz again ;loop until it does (when ∙=0, we're done)╬delay value accumulated in CX will indicate ╬X-ordinate position ofjoystick A. ╬resulting value is CPU-dependent. To ensure accuracy, itwould be better to use a ▄ware timer, ra╬r than a loop counter.P─ ┌15H ╙-·Functions& I/O ╘Map чE ╒ П7П 7{C7 ╫8Parallel Printer ¤╘s╬╙-·sup╘s up to three parallel printer ╘s which are assignedas LPT1-LPT3. During POST ╬·tests ╬se ╘s in this order: 1) 3bcH ╘found on Monochrome ц/ Printer ¤ 2) 378H printer ╘¤#1 3) 278H printer ╘¤#2√assigns ╬╘s as LPT1-LPT3, as ╬y are discovered. It stores ╬╬╘№es that respond to ╬test starting at 0:0408. See ·ы·Service ┌17H provides full printer sup╘рup to 4 parallelprinters. To add a рth printer, you would need to place its base №into╬·ыword at 0:0410.You can trick ╬system into thinking that one printer is ano╬r. It is asimple matter of swapping base ╘№es in low ╫: ;- this example swaps LPT1 рLPT2 mov ax,0 mov ds,ax mov si,0408H ;point to start of printer table at 0:0408 mov ax,[si] ;get base ╘рLPT1 xchg ax,[si+2] ;swap with ╘рLPT2 mov [si],ax ;√put old LPT2 into LPT1 spot╘ ъ▀ J▀378H-37fH Parallel Printer ¤#1 3bcH is base of MDPA 278H is base of printer ¤#2378H Printer ыLatch. ╠: send ўto printer ╥: fetch last ўsent37aH ╥/╠: Printer ёs ╓7┬6┬5┬4┬3┬2┬1┬0╖ ║0 0 0│ │ │ │ │ ║ ╙─┴─┴─┴╥┴╥┴╥┴╥┴╥╜ ∙ ║ ║ ║ ║ ╚═ 0: +Strobe (pin 1) 1 when sending ў ║ ║ ║ ╚═══ 1: +AUTO LineFeed (pin 14) 1 causes LF after CR ║ ║ ╚═ 2: -INIT (pin 16) 0 resets ╬printer ║ ╚═ 3: +SLCT IN (pin 17) 1 ╨s ╬printer ╚ ═ 4: +IRQ у(hdwr ┌when -ACK goes false)) LPT1═IRQ 7 (┌0fH)) LPT2═IRQ 5 (┌0dH)379H ╥-only: Printer ╧ ╓7┬6┬5┬4┬3┬2┬1┬0╖ ║ │ │ │ │ │0 0 0║ ╙╥┴╥┴╥┴╥┴╥┴─┴─┴─╜ ∙ ║ ║ ║ ║ ╚═ 3: -ERROR (pin 15) 0=printer signals an error ║ ║ ║ ╚ ═ 4: +SLCT (pin 13) 1=printer is ╨ed ║ ║ ╚ ═ 5: +PE (pin 12) 1=out of paper ║ ╚ ═ 6: -ACK (pin 10) 0=╥y рnext є ╚═ 7: -BUSY (pin 11) 0=busy or offline or errorP─ ┌17H ╙-·Functions& I/O ╘Map ▓{C▓ ╫│ю╘sю(Direct ╫Access) is used рhigh-speed ыtransfers between I/Odevices √╫without intervention of ╬CPU. It is typically employed byч√▄шхrs, but it could be used рstreaming tape or anyo╬r device as long as it does not interfere with ╬operation of o╬rst√ard devices.╬original PC sup╘s four 8-∙юЇs, across a 20-∙№space,using an Intel 8237A юёler chip. ╬▌AT▐ sup╘s 7 юЇs bycascading a second 8237A юёler. ╬differences between PC √AT юare covered at ╬end of this section.Ї Usage in PC √XT▀ !▀ 0 ╫refresh (highest priority) 1 not used 2 ч¤ 3 ▄ш¤(lowest priority)╘ ъ▀ J▀000H-007H юbase №an offset ╤s All are 16-∙╤s: ╥/╠╬low ў, ╬n ╬high ўat ╬same I/O ╘. Base №es ar offsets from a юPage (see below).000H ╠: юЇ0 base №(also sets я№) ╥: юЇ0 я№001H ╠: юЇ0 base №√word count ╥: юЇ0 яword count002H ╠: юЇ1 base № ╥: юЇ1 я№003H ╠: юЇ1 base №√word count ╥: юЇ1 яword count004H ╠: юЇ2 base № (ч¤) ╥: юЇ2 я№ "005H ╠: юЇ2 base №√word count " ╥: юЇ2 яword count "006H ╠: юЇ3 base № (▄ш¤) ╥: юЇ3 я№ "007H ╠: юЇ3 base №√word count " ╥: юЇ3 яword count "■ J■008H-00fH юё/╧╤s008H ╠: юЄ╤ ╓7┬6┬5┬4┬3┬2┬1┬0╖ ║ │ │ │ │ │ │ │ ║ ╙╥┴╥┴╥┴╥┴╥┴╥┴╥┴╥╜ ∙ ║ ║ ║ ║ ║ ║ ║ ╚═ 0: 1=у╫-to-╫ю(ch0═ch1) ║ ║ ║ ║ ║ ║ ╚═══ 1: 1=уCh0 №hold ║ ║ ║ ║ ║ ╚═ 2: 1=disable ёler ║ ║ ║ ║ ╚═ 3: 1=╨compressed timing ╓ ║ ║ ║ ╚ ═ 4: 1=уrotating priority ║ ║ ╚ ═ 5: 1=╨extended ╠╓; 0=late ╠ ║ ╚ ═ 6: 1=╨DRQ sensing as active high; 0=low ╚═ 7: 1=╨DACK sensing as active high; 0=low ╥: ю╧╤ ╓7┬6┬5┬4┬3┬2┬1┬0╖ ║ │ │ │ │ │ │ │ ║ ╙─┴─┴─┴─┴─┴─┴─┴─╜ ∙ ╚══╦══╝ ╚═╩═ 0-3: Ї0-3 has reached terminal count ╚ ═ 4-7: Ї0-3 has a request pending009H ╠: request ╤ ╓7┬6┬5┬4┬3┬2┬1┬0╖ ║ unused │ │ ║ ╙─┴─┴─┴─┴─┴╥┴─┴─╜ ∙ ║ ╚═╩═ 0-1: ╨Ї(00=0; 01=1; 10=2; 11=3) ╚═ 2: 1=set request ∙рЇ; 0=reset request00aH ╠: single mask ∙╤ ╓7┬6┬5┬4┬3┬2┬1┬0╖ ║ unused │ │ ║ ╙─┴─┴─┴─┴─┴╥┴─┴─╜ ∙ ║ ╚═╩═ 0-1: ╨Ї(00=0; 01=1; 10=2; 11=3) ╚═ 2: 1=set mask рЇ; 0=clear mask (у)00bH ╠: ╓╤ ╓7┬6┬5┬4┬3┬2┬1┬0╖ ║ │ │ │ │ │ │ │ ║ ╙─┴─┴╥┴╥┴─┴─┴─┴─╜ ∙ ╚╦╝ ║ ║ ╚╦╝ ╚═╩═ 0-1: ╨Ї(00=0; 01=1; 10=2; 11=3) ║ ║ ║ ╚═ 2-3: transfer type (00=verify=Nop; 01=╠; 10=╥) ║ ║ ╚ ═ 4: 1=уauto-initialization ║ ╚ ═ 5: 1=╨№increment; 0=№decrement ╚═ 6-7: 00=dem√╓; 01=single; 10=block; 11=cascade00cH ╠: clear ўpointer flip-flop. Any ╠clears ╬flip-flop so that ╬next ╠to any of ╬16-∙╤s is decoded as ╬low ў. ╬next is ╬high ў, ╬n next is low, etc.00dH ╠: master clear. Any OUT clears ╬ё(must be re-initialized) ╥: temporary ╤. Last ўin ╫-to-╫xfer (not used)00eH ╠: Clear mask ╤s. Any OUT уs all 4 Їs.00fH ╠: master clear. Clear or mask any or all of ╬Їs. ╓7┬6┬5┬4┬3┬2┬1┬0╖ ║ │ │ │ │ ║ ╙─┴─┴─┴─┴╥┴╥┴╥┴╥╜ ∙ ║ ║ ║ ╚═ 0: 1=mask Ї0; 0=у ║ ║ ╚═══ 1: 1=mask Ї1; ║ ╚═ 2: 1=mask Ї2; ╚═ 3: 1=mask Ї3; ╥: temporary ╤. Last ўin ╫-to-╫xfer (not used)■ J■081H-08fH юpage ╤s. To ╨a starting №рa юoperation, do an OUT to ╬page ╤(╘s 81H-83H) р╬╨ed Ї╬n set ╬base №(╘s 00H-07H) р╬Ї. A page ╤is set with a 4-∙value that represents ∙s 16-19 of ╬20-∙ю№. Since ╬я№is a 16-∙value, it is not possible to cross a 64K boundary (eg, №1000:0, 2000:0, 3000:0, etc.) with a юoperation.081H Ї2 page ╤ (чю)082H Ї3 page ╤ (▄шю)083H Ї1 page ╤P▀┌ ─┐│▌AT▐ ю│ ╬юsystem on ╬AT is basically upwardly-compatible with PC└ ─┘ √XT ю. In addition to ╬four 8-∙Їs of ╬PC, ╬AT adds a second 8237A-5 юёler which sup╘s Їs 4-7.Ї Usage in AT▀ @▀ 0 spare# ─┐ 1 SDLC (Synchronous ыLink ё) ╞═ 8-∙юЇs 2 ч¤ │ 3 ▄ш¤ ─┘ 4 (ёler 2) cascade рёler 1 ─┐ 5 spare$ ╞═ 16-∙юЇs 6 spare$ │ 7 spare# ─┘■ J■081H-08fH юpage ╤s. On ╬AT, all 8 ∙s of ╬Page ╤s are used. ╬y become ╬high 8-∙s of a 24-∙№space (with ╬low 16-∙s being set in a Ї's base/я№╤). ╬page size is 128K (64K words) so юtransfers must not cross a 128K boundary (eg, №2000:0, 4000:0, 6000:0, etc.)081H Ї2 page ╤ (чю) (№∙s 16-23)082H Ї3 page ╤ (▄шю) (№∙s 16-23)083H Ї1 page ╤ (№∙s 16-23)087H Ї0 page ╤ (№∙s 16-23)089H Ї6 page ╤ (№∙s 17-23)08bH Ї5 page ╤ (№∙s 17-23)08aH Ї7 page ╤ (№∙s 17-23)08fH refresh■ J■0c0H-0dfH ▌AT▐ юёler ╤s р16-∙юI/O. Їs 0-3 work with 8-∙I/O as in ╬PC. Additional Їs 4-7 sup╘16-∙ device-to-╫√╫-to-device transfers. Transfers р╬se Їs always start on a word boundary √all №es √counts are р16-∙words (eg, a base №of 123H actually refers to offset 246H from ╬page рthat Ї).0c0H Ї4 base √я№(∙s 1-16; ∙0 assumed 0)0c2H Ї4 яword count0c4H Ї5 base √я№(∙s 1-16)0c6H Ї5 яword count0c8H Ї6 base √я№(∙s 1-16)0caH Ї6 яword count0ccH Ї7 base √я№(∙s 1-16)0ceH Ї7 яword count■ J■0d0H-0dfH ▌AT▐ юё/╧╤s0d0H ╠: Є╤ ╥: ╧╤0d2H ╠request ╤0d4H ╠single mask ╤∙0d6H ╠╓╤0d8H Clear ўpointer flip-flop0daH ╠: master clear ╥: temporary ╤0dcH Clear mask ╤0deH ╠all mask ╤∙sP─ ╙-·Functions0 I/O ╘Map #■,ость 0.ие пункты меню относятся к =м членам семейства персональныхкомпьютеров IBM. Ивы встречаете где-нибудь ую ссылку, озzет, )ующая  я, Xая, JФсредство имеет смысл жйконкретной модели PC и вероятно не Eменяется в других моделях. ▌AT▐ . обозzет IBM AT Ф,ый; базируется на 80286 CPU ▌286▐ . обозzет любой компьютер на базе 80826, ║ая XT-286 ■PC/XT■ ... обозzет либо PC, либо XT, но ни в коем случае НЕ AT ■XT■ . обозzет XT (lо ссылается на отличия в ·ого иа) Jr . обозzет ТОЛЬКО PCjr (иными словами, игнорируйте )(ничего) .. ИниМой ссылки s, Пя Eменима ко ╡м членам семейства PC, и остается ,ой по ╡м вариациям ╙-· и аппаратуры PC (и его клонов).P─ Нажмите ж╣та в предыдущий >   \# `7awp9╙у u6 vD$F7& vE< v F v N!7NuOо QQ SP U2 W:7WЮYм]╝]пdуBd e╝и эTECH █! отмечает вариации и не,ости между ╝ями э, выдаваяв качестве предупреждающего флажка подсвеченный r╝и.Там, где  эФFя э!енно отличаются между ╝ями,Оуются .ие предупреждающие флажки: 2.0+ (Фпусто) . Eменимо к э╝и 2.0 и выше 2.x . Eменимо к э2.0 Ф2.1 3.0+ Ф3.x  . Eменимо к ╝ям э, yя с э3.0 3.0 Ф3.1 Ф3.2 . Eменимо к нной и Iдующим ╝ямОсновной 2эбыл вчерне разработан в э1.0 и стабФзирован (читай:отлажен) в ╝и 1.1. аваша Aа ена └работоспособной вэ1.1, вы не ены Оовать  эс Зами выше 2eH.ИIBM ввела ый иPC (модель XT), она выпустила ╝ю э2.0 --значительное усовершенствование предыдущей ╝и, ║ающее:  Иерархию kй жорганизации ва к qям большой емкости  ▌-cй в/в , заменяющий неудобный с-cй в/в" и упрощающий вк ам и ам.  Vение &ого в/в жUNIX-подобной независимости от   бы  жсвязи с не&ым oем и иами RAM, в частности, консольный бANSI.SYSэ2.1 анила t`и добавила Rку иет жPCjr.э3.0 появилась вместе с ▌AT▐ и ║ила Rку 20-мега╟ного ого иа, 16-╞овые │ы тжминимизации потерь _на иах, :енную Пю об aах ж й э. !енно новые Жы э: ATTRIB, LABEL, VDISK.SYS (RAM-и)э3.1 ║ила vые сетевые средства (>ение, ─ку, переназна- чение). !енно новые Жы э: JOIN, SUBSTэ3.2 появилась вместе с IBM Convertible PC. Она :ила 2┘, ║ив в него Rиваемое эатирование иа и т.п. !енно новые Жы э: REPLACE, XCOPY, DRIVER.SYS (логич.и)┌─┐│ ,ость │ Вообще говоря, ╝и с большими rами ,ы с вер-└─┘ сиями, имеющими меньшие rа. Большая часть Aногообеспечения написана жэ2.x, Вая наиболее распро$ена. Добавленныесредства э3.x отqьно не!енны, не имеет смысла разрабаты-вать софтвер, опирающийся на специфические средства 3.x (исключая сетевыеDя).Вероятно, самая распро$енная проблема ,ости встречается на машинахс малой ^ю. Iдние ╝и эОуют больше RAM из вного пулаи оставляют меньше места жEкладных A. ╝я На ие В _ ▀ ▀  ▀ э1.0 11,551 12,144 На ие = <Ў.COM э1.1 13,279 12,400 +IBM·.COM э2.0 39,424 24,800 + IBMэ.COM э2.1 39,551 24,800 э3.0 58,926 37,024 В _= согласно отчету CHKDSK.COM; э3.1 60,534 37,040 больше - с SHARE, MODE, и т.п., э3.2 68,637 44,704 и vыми директивами ї.SYSЕще одна проблема возникает с бами жых иов не-IBM.vые прекрасно работают в э2.x, но не работают в 3.x (см. ниже).Остерегайтесь же RAM-6ных (TSR) A. По uости имAам Eходится пять ряд "закулисных" (ане явно запрещенных)iй, обойти проблему нереентерабельности э. ПЕРВОЕ, uосделать, Ивы подозреваете, виной ╡му ,ость - удалить ╡6ные Aы из вашего AUTOEXEC.BAT и переЭзиться (не забудьте,ї.SYS же имеет !енное влияние на э).┌─┐│ Ловушки и капканы │ ├о  й э,ы вверх, но есть несколь-└─┘ ко мест, где вы не ены Eнимать на веру. Большаячасть пунктов в .ем списке отqьно не!енна, но учет го сэкономить вам tчасов ╖и отладки. эFn 1bH перестала ╣щать ╩кительной тв э2.0 и ╣ща- ет тель на ╟йа qя . тне обязана └в _. эFn 4fH (Найти .ий ) имеет тонкое различие между ╝ями 2.x и 3.x. Вы теперь ены (ять тель DS:DX на Пю, ╣щенную ▒ом 4eH (Найти 1-й ). э2.x предполагала, ь. эFn 30H Jит 9ы BX и CX в э3.0+ эFn 38H (Ин. $ы) ╣щает не,ый ┼Пи $ы Три 16-╞овых слова в конце BPB (Оуемых бами ) Хи- лись с "опциональных" на "обязательные" в э3.0. Учтите же, vые не-IBM-овские бы НЕ (яют BPB в Гом 3е ого иа (относится к им иам, Вые не ются во ╢╙-Scan , не имеют  ы >ов и не самоЭжаемые).Наверное, !уют и другие проблемы не,ости снизу вверх. авыОуете wный ▒эФ(упаси боже!) wный╩в эФ╙, будьте готовы переписывать вашу Aу жIдующих╝й эи ·.P─ ,ость 0,  э  хх _< ╢■Цифровая ЛаЯркая буква K озzет, данная Ка находится на цифровой Лес правой стороны Лы.sоторые Ки K уникальны на уровне /ов. {, Ивынажимаете плюс (+), mчик Лы ┤помещает 1■2bH (47)в ┴Лы, независимо от того, Мую из двух К"+" вы нажали.Однако, vые Dя Bяют /, выяснить, был"серый плюс" (на цифровой Ле), и nют его 'ым образом.На 101-Кной Ле много дублирования между основной и цифровой кла-виатурами. Aы, Bяющие /ы, испытывают трудности с ойЛой. ж,ости между Лами лучше ╡го Оовать 1ьного в/в эжя Ки Bки на :енные Зы ,Вые полностью документированы.P─ Нажмите ж ╣та в предыдущий > ■НЕ ДОКУМЕНТИРОВАНОIBM *ла себе репутацию надежности и ",ости снизу вверх". аодоб-ренная IBM публикация утверждает, vое средство, Ф я, Ф╩в ·, эФаппаратуре Ооваться Eкладными Aами, то мыуверены в том, т ╩не Хится в будущем.Пя, Gленная в Tech █!, собрана из =х источников,в основном из публикаций, одобренных фирмами IBM и/ФMicrosoft, а же изжурнальных статей и книг, Вые ссылаются на ие публикации.В очень немногих случаях Tech █! Gляет Пю, не одобреннуюIBM ФMicrosoft, и эти места явно отмечаются. авы решитесь Ооватього рода Пю, учтите, она оказаться НЕПРИМЕНИМОЙ в будущих╝ях э, ·Фoя.P─ Нажмите ж ╣та в предыдущий > ч  ╛& ╜6║ ╝ ╜ ╒#■POST (Power-On Self-Test - самоBка EЭзке) ┌─┐ ┌─┐ ┌─┐ ┌─┐ │P│ower-│O│n │S│elf-│T│est └─┘ └─┘ └─┘ └─┘ POST - ╙-Aа, Вая пяется E║ении PC. Эта Aа: Bяет Yи (PC,XT) ФCMOS-^(AT), fить, Мая периферия подключена, и ет ╞овые и списка oя Bяет RAM, Ыывает ме, требуемые жобнаружения `в RAM, и тестирует основные компоненты (ю, Fя, и, Лу и т.п.) пяет ╙-Scan , Тировать дое oе пяет кия по Эзке э(Фпению ╙-6ного BASIC) Bяет CMOS ╩0fH (и ме ·0:0472) на случай 'ых кийP─ Нажмите ж╣та в предыдущий > щ9TECH █! Добро пожаловать в TECH █! Электронный справочникTECH █! - справочное средство жAиста. Он +ит исчерпывающиетехнические факты, >ы и "ы мх, Gляемые в уникальнойиндексированной е и мгновенно вные из вашего редактора Фотладчика.мх справочника +ит более 400 печатных $иц а, излагающегосжатую суть наиболее часто uой технической Пи, +ащейся вдокументах эTechnical Reference и PC/XT/AT ▄ware Technical Reference. Flambeaux Software / 1147 East Broadway Street, Suite 56 / Glendale, CA 91205 (818) 500-0044 Автор: Dan Rollins Нажмите ─┘ , увидеть, МОовать TECH █! █! (проеение)" Посвящается ┌─┐ │ To │ │ Robert Benjamin Rollins │ │ √ │ │ Am√a Jasmine Rollins │ ┌─┘ └─┐ │ Пусть ваша жизнь наполнится радостью, Мвы наполнФмою │ └<─┘ Столкнувшись с проблемой, Вую вы не понимаете, сzла справьтесь с любой ее частью, Вая вам понятна, а потом посмотрите на нее снова.+ -- Robert Anson Heinlein (из книги ╬Moon is A Harsh Mistress)┌ ─┐ Автор и излель EложФ╡усФя к тому, обеспечить,│ Disclaimer │ вся Пя, +ащаяся в м е, была корректной└ ─┘ и эффективной. Автор и излель не дают ниМого ручательства,явного Фподразумеваемого, по отношению к Aам, теориям, рекомендациямФдокументам, изложенным здесь. Автор и излель не несут ответственности залюбые случаи ущерба, Eчиненного кой ФОованием й AыФа, Вый она выдает.┌ ─┐│ Trademarks │ Flambeaux Software, TECH █!, и ╬Electronic Manual являются└ ─┘ торговыми марками Flambeaux SoftwareIBM и PC-э- торговые марки International Business Machines CorporationMicrosoft, MS-э, GWBASIC и Windows - торговые марки Microsoft CorporationBuрd Whiffle-Bumpkin не является чьей-либо торговой маркойWordstar - торговая марка MicroPro InternationalWordPerfect - торговая марка Wordperfect Corporation This program √associated programs √ыfiles are Copyright (c) 1985,1986,1987 by Dan Rollins √Flambeaux Software ь! ъ/ыC TECH █! (проеение)Aа █- Фб0ы помощи - выдает справочника на ваши реагирует на ваш ┐. Любой а, выдаваемый с повышеннойяркостью, является выбираемым пунктом. Переместите к ому пункту Б(на-жимая пробел ФКи Ба) и нажмите Enter жвыбора го пункта.Многие $ицы справочника +ат более одного а Пи. На их$ицах, Оуйте Ки [] и [] либо [PgUp] и [PgDn], листатьвдоль а.█! Rивает FIFO-стек $иц и Nй. Ки [Esc] и [-] (backspace)╣тят вас на предыдущую $ицу. [F9] и [F10] (Ф[Esc] в Главном меню) заканчивают работу TECH █! Ка [F1] выдает полную сводку правил работы со справочником. Выберите >ниже, переместив к нему Би нажав Enter.P─ ка и настройка █! ▒█! 6ный █! Главное меню   ш4 #ь*!ы,╖2:╖PьPыCP Q▒█! См. TECH █! на предмет общего введения в эту Aу.б█! └вызван со .ими опциями:ат: ▐[>] [/D=█file.dat] Ф ▐[/D=█file.dat] [/K=nn] /P Ф ▐[/D=█file.dat] [/K=nn] /X[=progname | =э] [prog_parms] >- любой выбираемый пункт в меню >ы помощи . Достаточно заль t[ых 1ов имени; [ый совпадающий >┬выбран и показан. ▐в м случае не ┬6ным в _. а'>' задается E ▒е опции /X, /P и /K игнорируются. /D= задает и, путь и Уа мх с ом помощи. Эта опция полезна в том случае, Иимеется t ов помощи. См. ку и настройку █! Обязательно йте и, полный путь и Ув й опции! /P ка 6ного ▐. Нужно переЭзить э,  де╔изировать ▐в м случае. типичный 8 Оования, Oющий ╔изировать █! в любой момент простым нажатием 'Ки срочного ▒а'. /X= 8eXec: ▐Эжается в ^и ░ет Aу 'progname'. Iоа из й Aы вся ^, исполь- зовавшаяся ▐, освобождается ждругих Dй. авы опускаете '=progname' Фзадаете /X=э, то ▐ Эжает вторичную копию Ў.COM и Zает ему е. Жа EXIT по подсказке эде╔изирует ▐и освобождает занимаемую им ^. См. 6ный █! /X ена └Iдней опцией в Жной #е ▒а ▐. ╡1ы за й опцией считаются \ами, Zаваемыми ░емой Aе. /K=nn задает /Лы, заменяющий lую комбинацию Alt-H. 'nn' - десятичные цифры, задающие /. /K игнорируется, ане заданы опции /X Ф/P. Ье: /- НЕ то же, З■. См. /ы . В любом случае выбранная Ка ена └нажата вместе с [Alt] ж▒а ▐. Кроме того, комбинация [Ё]-[левый Shift] ┤░ет ▐.Eмеры: ▐ Щает ▐жинтер╔ного просмотра. ▐не 6ен. ▐ANSI ░ет ▐, выдавая $ицу "ANSI.SYS Escape-Hости. авы нажмете [F10] жоа, помощи остаsся на е. ▐не 6ен. ▐/P /K=38 ет 6ный ▐и ╣щается в э. Alt-L ┬╔изировать ▐(38 - /Ки [L]). ▐/D=c:\█\tech█.dat /X ░ет ▐в 6ном eXec-8е. ▐Оует  TECH▐.DAT из kя \▐на ие C. Поскольку УAы не но в опции /X, вам ┬выдана подсказка э. Ка Alt-H (по ю) ┬╔изировать ▐. Жа эEXIT Яит ▐и освободит его ^. ▐/X=edit myprog.asm Щает ▐.EXE, Вый Щает Aу EDIT (EDIT.COM, EDIT.EXE ФEDIT.BAT) и Zает ей \'myprog.asm'. Пока EDIT пяется, ▐вен в popup-8е. EЯении EDIT, ▐удаляется из _.FYI: Основная часть ба █! написана на языке Microsoft C, а его раз- личные подAы - на ассемблере. Отдельная Aа Оовалась жпреобразования &ого ового а ■в сжатый индек- сированный ат а ▐FILE.DAT. 0а помощи +ит более 230 >ов (около 400 $иц бумаги 11 ата). Несжатые овые фай- лы 0ы занимают почти 800K иовой _.P─ ка и настройка █! 6ный █! Главное меню   ъ3╖5 ъ)ь02 ╡4 ъ4ьB4 56ный █!TECH █! наиболее полезен М6ная "popup"-Aа, Gляющаявам Пю "на кончиках пальцев". Однажды вызванный, он Ч└╔изирован из вашего редактора, отладчика, среды Aирования Фнауровне подсказки э.Обратите внимание на .ие воз~сти и ограничения: █! идеально Оуется совместно с редактором Фотладчиком в овом 8е. Он не ┬корректно работать E▒е на ний . Укажите опцию /X E▒е █! , авы собираетесь удалить █! из _в ближайшем будущем, Фавы хотите, он был автоматически удален Eое из Dя. авы задаете опцию /X, не йте других RAM-6ных A(иначе █! остаsся в RAM). █! Оует lые трюки, обойти нереентерабельность э. аработает  я э, то Ъс ╔изации █! ┬запомнен, но не ┬немедленно mан ({,  я 0aH I1-го нажатия). █! Zает е ж╡х перехватываемых ╛ов Fй их [оzльным владельцам и ,со ╡ми популярными popup-Aами; однако не исключено, другие Aы будут мешать 6ному █!. а'срочный ▒' Alt-H пересекается с потребностью другого Dя, вы е ть другой /ж▒а popup. Отменить перехват /ов ~, в xый /({, 99). См. ▒█! Комбинация Ё-левый Shift ┤кительна и ╔на. Два Фболее экземпляра █! могут └6ными одно╖но, Ный со своим собственным ом мх. Не забывайте ть свой /ж 'срочного ▒а' Ного экземпляра. Eпомощи утФты ївы е выбрать разные  а жНого из ов мх. Комбинация Ё-левый Shift ┬╔изировать тот ▐, Вый был вызван [ым. И▐стартует, он находит свой мх и считывает  у мх из zла а. Iго обращение к у происходит по Ному >у Eего выборе. В 6ном 8е, закрывается Eое из popup, и заново bвается EНой ╔изации ▐, но Юок а не считывается заново. Пому важно, мх оставался на тех же ие и kи, и изzльно. См. ку и настройку █! об алгоритме, Вый Оует ▐E поиске а мх. Уа, заданное E▒е, ено (яться Eлюбой ╔изации ▐. авы Оуете опцию /D, ть мх, отличный от умалчи- ваемого, не забудьте ть полный путь (и:\путь\). авы задаете часть пути (т.е. учитываете ие я), то Юок а ┬считан корректно, но сам , воз~, не ┬найден Eповторном bтии, И▐╔изируется. йте полный путь а и в Же SET ▐FILE=, Ивы помещаете Уа в jе э.P─ ▒█! ка и настройка █! Главное меню } ъ}ы:}~ка и настройка █!Процедура ки ж0с ым иом: 1) Kе иету █! в иовод A и скопируйте с нее ╡ы в любое из kй, описанных среди поисковых путей Жэ(PATH). 2) ╡готово. Введите ▐и yйте просмотр.Процедура ки ж0без ого иа: 1) *йте рабочую копию иеты █! Eпомощи утФты DISKCOPY. (ите оригинал в безопасном месте. 2) Ный раз, Ивы хотите Оовать █!, вы ены Kь иету в одно из , сделать о ым и ввести ▐. авы ете опцию /X Ф/P, сделать █! 6ным, то вы ены обеспечить, иета █! находилась в [оzльном ой- стве EНой ╔изации █!.┌─┐│ Ья по ке │ б█! ищет мх Eсвоем [ом вызо-└─┘ ве и (в случае опций /X Ф/P) EНой ╔иза-ции. EЩе б█! ищет свой мх по .ему алгоритму:1) азадана опция /D=d:\путь\, то Оуется нный . Убедитесь, вы задаете правильные и, путь и Уа в опции /D. аой  не └найден, ▐снимается с сообщением об aе.2) аопция /D не задана, то в качестве имени а Eнимается ▐FILE.DAT, и т ищется в ем kи его иа.3) ане найден в ем kи, ▐ищет в jи э#у PATH=, а Чищет ▐FILE.DAT в Ном из путей, перечисленных в #е PATH=.4) апо-прежнему не найден, ▐ищет в jи э#у ▐FILE=d:\путь\, и пытается Оовать ой . авы Оуе- те эту опцию, йте ии полный путь в #е ▐FILE=.легко ить 6ный █!, сделайте им kе, +а-щее ы █!, Z▒ом ▐/X Ф▐/P. гарантирует, ▐найдет свои ме вIдствии, откуда бы он ни был ╔изирован.┌─┐│ Настройка  ов │ Отдельная утФта, ї.EXE, Gляется└─┘ на иете █!.Вы НЕ ДОЛЖНЫ Оовать їна: ▀  |ом дисплее IBM (Ф,ом с ним) с платой MDA ФHerculesОуйте ї, авы хотите настроить  а ж:▀   ного ного ╦а (CGA) с RGB-дисплеем  фс :енным  ным дисплеем ФRGB-дисплеемВы ДОЛЖНЫ Оовать ї, сделать █! читабельным на: ▀  ╦е CGA с одно ным составным }ом ▀Хить  а:  Сделайте им kе, +ащее ы █!.  Запустите Aу ї.  Выберите тип }а, жВого вы хотите ить  а.  Подберите  а по вашему вкусу (следите за макетом а).  Выберите Жу Save Changes (Фнажмите Esc, отменить Хения).їмодифицирует t╟в zле а ▐FILE.DAT в ем оглав-лении. Эта Пя считывается EЩе ▐-- не Ный раз E╔и-зации (6ного) ▐. Пому Хения  ов будут иметь эффект Eочередном Ще ▐.Поскольку Aа їмодифицирует ▐FILE.DAT, ┤имейте вную7ную копию; не Оуйте їжХения исходной иеты █!.┌─┐│ Более одного ба █! │ ау вас есть tов помощи в а-└─┘ те ба █!, вы е Оовать їжнастройки Ного из этих ов на свою комбинацию  ов.Следует избегать коллизий между ими ами. Простейший способ - KьНый из ов в свое собственное kе и делать Ное kеим Z▒ом 6ного ▐. Eмер: rem AUTOEXEC.BAT cd \█\basic █/p /k=48 (Alt-B ┬╔изировать BASIC █) cd \█\tech █/p (ая Alt-H ┬╔изировать TECH █)Мальтернативу вы е задавать опцию /D, Оовать свой жНого экземпляра █!. Eмер пакетного а: rem э▐.BAT rem Щает ▐(не6ный) с ом помощи по э rem ~задавать \, ющий zльный > c:\█\█%1 /D=c:\█\dos\█file.dat~переименовать один Фtов █!, но Eм вы еныОовать опцию /D EЩе ▐. {, Жа э: RENAME c:\█\▐FILE.dat c:\█\TECH.dat ▀ ▀переименовывает основной мх █!. ЧОуйте Жы: ▐/D=c:\█\TECH.dat (ж▒а не6ного █!)Ф ▐/D=c:\█\TECH.dat /P (жки 6ного █!)┌─┐│ Копирование и контрабанда │ █! не защищен от копирования. Вам Gля-└─┘ ется право *вать 7ные копии ов █!на иетах Фом ие жодного Lя и одного компьютера.НЕХОРОШО распро$ять копии █!, потому в м случае Dan Rollins и егоколлеги в фирме Flambeaux Software не Mат вознаграждения за тот труд, кото-рый они затратФна т продукт, и двое хорошеньких детей Dan'а будут вынужде-ны жить на улице, выпрашивая картофельные очистки.Наш ╩: Flambeaux Software 1147 East Broadway Street, Suite 56 Glendale, CA 91205! (818) 500-0044 ▒█! 6ный █! Главное меню помощи